Linux:删除某文件中的指定行,求解

2025-03-21 07:22:27
推荐回答(2个)
回答1:

[root@localhost ~]# cat file

service tomcat restartping

10.0.3.23

echo "demo">>/usr/local/text

service ntpd restart

[root@localhost ~]# grep -v 'echo "demo">>/usr/local/text' file

service tomcat restartping

10.0.3.23

service ntpd restart

重新输出到文件就好了。

回答2:

格式为 /正则表达式/

若正则表达式中含有 / 符号,需要用转义符。否则搞不清正则的起始和终止位置。

试试下面这样:

sed -i '/echo "demo">>\/usr\/local\/text/d' /usr/local/demo

 这个可以直接修改文件,而grep -v 需要重定向为新文件,然后再用“mv 新文件 原文件”来覆盖原文件。