linux里面的sed命令[root@localhost home]# cat a111222333我想把第二行222替换为两边带有引号的777 即 "777" 我是下面这样写的,但是不行.请问哪里写错了吗?(如果777两边没有引号的话,是这么写.加了引号
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 18:57:41
linux里面的sed命令[root@localhost home]# cat a111222333我想把第二行222替换为两边带有引号的777 即 "777" 我是下面这样写的,但是不行.请问哪里写错了吗?(如果777两边没有引号的话,是这么写.加了引号
linux里面的sed命令
[root@localhost home]# cat a
111
222
333
我想把第二行222替换为两边带有引号的777 即 "777" 我是下面这样写的,但是不行.请问哪里写错了吗?(如果777两边没有引号的话,是这么写.加了引号,
a=`cat -n /home/a|grep 222|awk '{print $1}'`
sed -i " $a c 777 " /home/a
linux里面的sed命令[root@localhost home]# cat a111222333我想把第二行222替换为两边带有引号的777 即 "777" 我是下面这样写的,但是不行.请问哪里写错了吗?(如果777两边没有引号的话,是这么写.加了引号
a又是变量名又是文件名,很容易搞混啊.建议换个变量名.
sed匹配一行时不一定要使用行号,直接匹配内容也可以.
一句就行:
sed -i '/222/c\"777"' /home/a要获取行号,也有简单一点的方法:
sed -n '/222/=' /home/a