在linux下批量向文件末尾添加内容

2200阅读 0评论2016-12-02 eatmyshort
分类:LINUX

最先想到的是sed命令,使用 
1) sed '/$/a\\n' test.txt,可以在文件的每行末尾添加一个回车
2) sed '$a\eof' test.txt,可以在文件的末尾添加'eof'

配合find命令实现批量添加
 find /home/name -type f -name rate.xml -exec sed '$a\\n' {} \;

=============网上搜到的其它方法

一直想用sed命令完成向文件尾内添加内容,没有发现好的方式

忽然想到cat命令

利用cat source_file >>dest_file命令可以将source_file内的内容添加到dest_file末尾。

于是可以结合find命令来实现。

但是实践中find的exec命令好像对重定向符号不感冒,于是想到了用脚本文件的方式:

新建一个append.sh,内容如下:

cat source_file >>$1

于是可以用find -name "test.txt" -exec ./append.sh {} \; -print

很方便的将内容添加到test.txt文件末尾。如果想备份文件,可以在append.sh中添加备份命令

如cp $1 $1.bak

========================================================

上一篇:python 以逗号分割,忽略引号内的逗号
下一篇:awk之第一列顺序不变对第二列进行排序