簡體   English   中英

將grep輸出輸出到sed中以替換整行

[英]Pipe grep output into sed to replace an entire line

我正在嘗試將grep命令的輸出通過管道傳遞到sed命令中的“替換為”值。 我已經嘗試過xargs和只是一個管道,但我似乎無法使其正常工作。 我在堆棧溢出中發現的所有示例均假設我知道我的grep命令的最終結果。 這是我正在嘗試做的一個例子。

cat /etc/sysconfig/network | grep HOSTNAME | grep -i s/greppedline/"HOSTNAME=something"/

實際上,我將不知道需要替換的行的全部內容,而只是知道主機名將在其中。 是否可以單行執行此操作而不用從grep命令創建變量?

我認為您正在嘗試這樣做,

sed '/HOSTNAME/s/.*/"HOSTNAME=something"/' /etc/sysconfig/network

添加內聯編輯-i選項以保存所做的更改。

sed -i.bak '/HOSTNAME/s/.*/"HOSTNAME=something"/' /etc/sysconfig/network
sed '/HOSTNAME/ c\
"HOSTNAME=something"/' /etc/sysconfig/network 

要么

sed 's/.*HOSTNAME.*/"HOSTNAME=something"/' /etc/sysconfig/network 

暫無
暫無

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

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