2014-01-12 101 views
-2

在我的模板(回調)中,有一行以「IP:」結尾,我想追加到該行。我試過這個命令:將變量的輸出附加到特定行的末尾

cat callbacks | grep "IP:" | cut -d ":" -f 2 | echo $(ping -c2 host.com). 

我以爲我可以在最後回顯一些東西,但那不起作用。有人可以澄清一下我做錯了什麼。

這是我到目前爲止有:

for textfile in $(find . -iname "2013*-malware-callback*.txt") 
    do cat callbacks | cat - $textfile > tmpfile && mv tmpfile $textfile 
done 
+0

請改善您的問題,包括您使用的任何樣本作爲語料庫進行測試。另外,請包含一份格式正確的**期望輸出樣本**,以便人們瞭解您嘗試實現的結果。 –

回答

0

下面以中$textfile內容,發現IP的任何發生:和追加給它的IP地址,並在TMPFILE保存結果:

v="1.2.3.4" 
cat "$textfile" | sed 's/IP:/IP: '"$v/" >tmpfile 

管道可以簡化爲:

sed 's/IP:/IP: '"$v/" <"$textfile" >tmpfile 

此外,如果最終的目標是與修改的版本替換$文本文件,我們可以用sed的修改就地功能:

sed -i.bak 's/IP:/IP: '"$v/" "$textfile" 

這會修改$文本文件的地方,並妥善保管,離開原來的用備份副本擴展名.bak。

+0

非常感謝一百萬 – Blacknickles