我有一个带有一堆文件路径的文本文件,例如 -
web/index.erb
web/contact.erb
...
等。我需要在
之前追加</head>
一行代码,对于每个文件,我试图弄清楚如何在不打开每个文件的情况下执行此操作。我听说过sed,但我之前从未使用过它...希望有一个grep命令可能吗?
由于
答案 0 :(得分:4)
while read f ; do
sed -i '/<\/head>/i*iamthelineofcode*' "$f"
done <iamthefileoffiles.list
或
sed -i '/<\/head>/i*iamthelineofcode*' $(cat iamthefileoffiles.list)
答案 1 :(得分:4)
xargs可用于将sed(或任何其他命令)应用于列表中的每个文件名或参数。因此将其与Rom1的答案相结合可以得出:
xargs sed -i 's/<\/html>/myline\n<\/html>/g' < fileslist.txt