我知道
cat file1 >> file2
会将 file1 的内容附加到 file2 的末尾。另一方面,如何将 file1 的内容附加到文件 2 的开头,而不是结尾?
实际上,我有一个主文件 M,目录 D 中有几个其他文件。我想将文件 M 的内容附加到目录 D 中所有文件的开头。
对于您可以执行的每个文件:
cat MASTER file >> file.tmp
然后将 file.tmp 移到文件上。
做就是了:
cat file1 file2 > tmp && mv tmp file2
您将不得不使用一个临时文件并在合并后重命名它。
例子:
echo -e "a\nb\nc" > LETTERS
echo -e "1\n2\n3" > NUMBERS
cat NUMBERS LETTERS > TMP
mv TMP LETTERS
cat LETTERS
您的命令可能类似于:
for file in $( find -name "*.java" ); do cat PREPEND ${file} > ${file}.tmp; mv ${file}.tmp ${file}; done