簡體   English   中英

如何使用sed執行此替換?

[英]How can I use sed to perform this replacement?

我需要用文件替換文件中的一行

#Banner none

Banner /etc/motd

我試過了:

sed -i "s/^#Banner none/Banner /etc/motd/" /root/testfile.sh

這是行不通的。 你知道我怎么做我想要的嗎?

由於替換中有斜杠,因此應使用除斜杠之外的其他分隔符,例如逗號:

sed -i "s,^#Banner none,Banner /etc/motd/," /root/testfile.sh

否則,您必須轉義路徑中的斜杠:

sed -i "s/^#Banner none/Banner \/etc\/motd/"

您需要轉義斜杠或使用與“/”不同的分隔符。

可以用

sed -i "s/^#Banner none/Banner \\/etc\\/motd/" /root/testfile.sh

要么

sed -i "s,^#Banner none,Banner /etc/motd," /root/testfile.sh

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM