如何拆分文件的内容?

Avi*_*Raj 2 command-line text-processing

我有一个包含一千行的文本文件。我想通过将每一行写入单独的文本文件来将文件拆分为 1000 个不同的文件。我希望拆分文件的名称按顺序排列。

例子:

foo.txt 文件包含,

foo
bar
...
...
lastfoo
Run Code Online (Sandbox Code Playgroud)

第一个拆分文件必须仅包含一行foo,其名称为bar1.txt. 并且第二个文件必须只包含一行bar,它的名称bar2.txt也是如此,因为最后一个文件应该包含一行lastfoo,最后一个文件的名称将是bar1000.txt.

命令行(单行)方式比脚本方式更好。

Tah*_*idi 5

用这个

split -l1 -a4 -d foo.txt bar
Run Code Online (Sandbox Code Playgroud)

它创建了 1000 个文件:

bar0000
bar0001
bar0002
bar0003
...
Run Code Online (Sandbox Code Playgroud)

man split有关选项的更多信息,请参见:

-l, --lines=NUMBER
put NUMBER lines per output file

-a, --suffix-length=N
use suffixes of length N (default 2)

-d, --numeric-suffixes
use numeric suffixes instead of alphabetic
Run Code Online (Sandbox Code Playgroud)