我想为 Unix 目录中的所有文件添加注释。如果我可以使用任何命令组合,请提出解决方案。
问问题
4376 次
4 回答
6
使用find
和sed
:
$ find . -maxdepth 1 -type f -exec sed -i '1i #comment' {} \;
这会将行添加#comment
到当前目录中所有文件的顶部
于 2013-01-28T15:03:31.900 回答
3
尝试使用简单的shell
连接来做到这一点:
for i in *; do
{ echo '# this is a comment'; cat "$i"; } > /tmp/_$$file &&
mv /tmp/_$$file "$i"
done
于 2013-01-28T15:00:37.257 回答
1
为了好玩,请尝试使用ed执行此操作:
echo $'1i\n# comment\n.\nw\nq' | ed -s file.txt
Here-doc版本:
ed -s file.txt <<EOF
1i
# comment
.
w
q
EOF
于 2013-01-28T19:14:58.787 回答
1
如果您想为所有带有扩展名的文件添加注释(例如“.rb”):
find . -maxdepth 1 -type f -name "*.rb" -exec sed -i '1i #comment' {} \;
和递归:
find . -type f -name "*.rb" -exec sed -i '1i #comment' {} \;
于 2015-10-21T11:12:11.570 回答