Linux 如何向文件夹中的每个文件添加行?

Linux 如何向文件夹中的每个文件添加行?,linux,Linux,我正在尝试向文件夹中的所有文件添加许可声明。有没有快捷方式/linux命令可以实现这一点?如果可以对具有特定扩展名的文件执行此操作,则效果会更好 编辑:这是我根据@vimsha的回答发出的最后一个命令: 找到-键入f-名称“*.js”-exec sh-c'echo”/*@flow*/\n$(cat$0)“>0'{}\; 将cd放入文件夹并执行以下命令 find *.txt -exec sh -c 'echo "license " >> $0' {} \; 上面的命令将查找所有扩展

我正在尝试向文件夹中的所有文件添加许可声明。有没有快捷方式/linux命令可以实现这一点?如果可以对具有特定扩展名的文件执行此操作,则效果会更好

编辑:这是我根据@vimsha的回答发出的最后一个命令:

找到-键入f-名称“*.js”-exec sh-c'echo”/*@flow*/\n$(cat$0)“>0'{}\;

将cd放入文件夹并执行以下命令

find *.txt -exec sh -c 'echo "license " >> $0' {} \;
上面的命令将查找所有扩展名为“txt”的文件,并将字符串“license”附加到这些文件中。您可以将其更改为所需的扩展名和要附加的文本

要添加到文件的开头,请执行以下操作:

find *.txt -exec sh -c 'echo -e "license\n$(cat $0)" > $0' {} \;

将cd放入文件夹并执行以下命令

find *.txt -exec sh -c 'echo "license " >> $0' {} \;
上面的命令将查找所有扩展名为“txt”的文件,并将字符串“license”附加到这些文件中。您可以将其更改为所需的扩展名和要附加的文本

要添加到文件的开头,请执行以下操作:

find *.txt -exec sh -c 'echo -e "license\n$(cat $0)" > $0' {} \;

但是许可证通常在文件的开头,不是吗?@vagoberto OP没有说明许可证信息需要放在哪里。如果一开始就需要,可以对上面的内容做一个小的修改command@Vimsha,是的,我想把它添加到顶部。你能告诉我们怎么做吗?但是许可证通常在文件的开头,不是吗?@vagoberto OP没有说许可证信息需要放在哪里。如果一开始就需要,可以对上面的内容做一个小的修改command@Vimsha,是的,我想把它添加到顶部。你能告诉我们怎么做吗?用vim。将许可证放入注册表。然后在vim中打开所有文件或使用quickfix窗口。记录在文件顶部插入寄存器的宏,执行
:wn
和结束宏。运行宏。使用vim。将许可证放入注册表。然后在vim中打开所有文件或使用quickfix窗口。记录在文件顶部插入寄存器的宏,执行
:wn
和结束宏。运行宏。