我必须补充内容的文件到每个文件的末尾prefs.js
。尝试过find -name 'prefs.js' -exec more filecontent >> '{}' \;
,但没有用。
答案1
重定向不会对每个文件都发生(这很棘手)。解决方法是为每个文件生成一个新的 shell:
find -name 'prefs.js' -exec sh -c 'cat filecontent >> $1;' - '{}' \;
是-
必要的,因为它成为第零个($0
)参数sh
此外,您必须使用cat
而不是 more。More 是一个分页器,它允许用户滚动浏览文档。
答案2
使用 xargs:
find -name 'prefs.js' | xargs -n1 bash -c 'cat content_to_be_added >> $1;' -
答案3
for f in `find -name 'prefs.js'`
do
echo $f
#cat $f >> outfile
cat infile >> "$f"
done
答案4
怎么样
find -name 'prefs.js' -exec dd if=filecontent conv=notrunc oflag=append of='{}' \;
假设filecontent
该文件包含您想要附加到prefs.js
文件的内容。