Redian新闻
>
如何用’sed‘ comment out 某一行。
avatar
如何用’sed‘ comment out 某一行。# Linux - Linux 操作系统
h*o
1
我想comment out 某一行。
suppose the content of a.txt is:
111111111
222222222
33333AAA
444444444
我写到:
pos=`grep -n "AAA" a.txt |cut -d':' -f1`
sed "${pos} d" a.txt >b.txt
sed '
$pos i\
#33333AAA\
' b.txt>a.txt
前两个命令没问题, 最后一个命令得到错误信息:
sed: command garbled: $pos i\
请问错在哪? 其实我用:
sed '
3 i\
#33333AAA\
' b.txt>a.txt
就对了。 可能和variable 有关。
avatar
j*a
2
''里面的变量名不展开替换

【在 h**o 的大作中提到】
: 我想comment out 某一行。
: suppose the content of a.txt is:
: 111111111
: 222222222
: 33333AAA
: 444444444
: 我写到:
: pos=`grep -n "AAA" a.txt |cut -d':' -f1`
: sed "${pos} d" a.txt >b.txt
: sed '

avatar
h*o
3
不明白。 请问怎么写是正确的?

【在 j*a 的大作中提到】
: ''里面的变量名不展开替换
avatar
q*d
4
you should have known yourself - use partial quoting ("..." as in 1st sed
command)
BTW why not use
sed "s/^\(.*)AAA/#\1AAA/" file
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。