将目录中所有*.txt文件合并为一个大文本文件的最快和最实用的方法是什么?
目前我正在使用cygwin的窗口,所以我可以访问BASH。
Windows shell命令也会很好,但我怀疑有没有一个。
将目录中所有*.txt文件合并为一个大文本文件的最快和最实用的方法是什么?
目前我正在使用cygwin的窗口,所以我可以访问BASH。
Windows shell命令也会很好,但我怀疑有没有一个。
当前回答
您可以使用Windows shell拷贝来连接文件。
C:\> copy *.txt outputfile
来自帮助:
若要追加文件,请为目标指定一个文件,但为源指定多个文件(使用通配符或file1+file2+file3格式)。
其他回答
所有这些都令人讨厌....
ls | grep *.txt | while read file; do cat $file >> ./output.txt; done;
简单的东西。
请记住,对于目前给出的所有解决方案,shell决定文件连接的顺序。巴什,IIRC,这是字母顺序。如果顺序很重要,您应该适当地命名这些文件(01file.txt, 02file.txt,等等),或者按照您想要连接的顺序指定每个文件。
$ cat file1 file2 file3 file4 file5 file6 > out.txt
这会将输出追加到all.txt
cat *.txt >> all.txt
这将覆盖all.txt
cat *.txt > all.txt
这种方法怎么样?
find . -type f -name '*.txt' -exec cat {} + >> output.txt
您可以使用Windows shell拷贝来连接文件。
C:\> copy *.txt outputfile
来自帮助:
若要追加文件,请为目标指定一个文件,但为源指定多个文件(使用通配符或file1+file2+file3格式)。