在我的模板(回调)中,有一行以“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
此外,如果最终目标是用修改后的版本替换$ textfile,我们可以使用sed的就地修改功能:
sed -i.bak 's/IP:/IP: '"$v/" "$textfile"
这会修改$ textfile,为了妥善管理,请保留原始文件的备份副本,扩展名为.bak。