sed -if /script/scr.sedcc test.txt

CU上的问题5:
这条语句有什么作用?
sed -if /script/scr.sedcc test.txt

这题看似简单 但没仔细看过man的人估计都会答错

这题出的让我佩服的五体投地..

题解:

-i是参数 f是-i的子参数 意为rename的追加拓展名 不写则rename源文件名 即为覆盖

/script/ 正则匹配即含有script的行

s是替换函数(sed内部命令)

c是替换分隔符即相当于“/

sed -if /script/scr.sedcc test.txt 解析为 sed -iABC '/script/s/r.sed//' test.txt

意思是: 将test.txt文件含有script的行中的r.sed替换为空,并且将更改后的文件追加拓展名后生成新文件名,而且重命名后的文件与原来的文件的innode节点完全相同
看过程:

[root@shell opt]# rm -rf a.*
[root@shell opt]# touch a.1
[root@shell opt]# ll -i a.*
328942 -rw-r--r-- 1 root root 0 05-19 09:34 a.1
[root@shell opt]# sed -iABC '/script/s/r.sed//' a.1
[root@shell opt]# ll -i a.*
328944 -rw-r--r-- 1 root root 0 05-19 09:35 a.1
328942 -rw-r--r-- 1 root root 0 05-19 09:34 a.1ABC
[root@shell opt]#

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值