鱼C论坛

 找回密码
 立即注册
查看: 2941|回复: 4

sed语句求解释

[复制链接]
发表于 2019-5-14 13:52:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
dd
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-5-14 13:54:11 | 显示全部楼层

sed -n -e'/' ${deal_num}' /=' ${date_tmp}_${deal_sum}_server.log
其中 deal_num date_tmp deal_sum前面已经定义过
求解答!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-14 14:12:23 | 显示全部楼层
dd
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-10-18 15:25:00 | 显示全部楼层
给你贴一段执行结果,你看下。
[root@VM_0_3_centos wwwlogs]# cat test.log 
abc
abd
adfda
abe
bdc
cde
[root@VM_0_3_centos wwwlogs]# sed -n -e'/'abd'/=' test.log 
2
[root@VM_0_3_centos wwwlogs]# sed -n -e'/'ab'/=' test.log 
1
2
4
在我的例子中,打印了test.log中abd字符所在行的行号。

针对你的例子,就是打印这个文件 ${date_tmp}_${deal_sum}_server.log 中包含 ${deal_num} 的行的行号。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-12-28 16:28:09 | 显示全部楼层
deal_num 是变量的话,在sed命令里不能使用单引号,而是要使用双引号。因为单引号会直接解释。具体的你可以百度下shell单引号双引号的意义。
[root@izbp16oyohyajnkrv0rik6z ~]# cat server.log 
4001+4002
4003-4004
4005=4006
4001*4006
4098/4001
[root@izbp16oyohyajnkrv0rik6z ~]# deal_num="4001"
[root@izbp16oyohyajnkrv0rik6z ~]# sed -n -e"/"${deal_num}"/=" server.log
1
4
5
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-15 01:22

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表