我有一个包含 7000 行的文件。我需要每次合并 100 行,以将其缩减为 70 行,即
line 1
line 2
line 3
...
line 7000
变成
line 1 line 2 line 3 line 4 ... line 100
line 101 line 102 line 103 line 104 ... line 200
...
line 6901 line 6902 line 6903 line 6904 ... line 7000
我知道我可以使用代码来实现这一点。有没有办法在命令行上做到这一点?
答案1
尝试 xargs:
xargs -L 100 < file
测试:
for i in {1..7000}; do echo "line $i"; done | xargs -L 100
答案2
我会做这样的事情:
split -l 100 --numeric-suffixes--additional-suffix=.tmp The_Big_File fragment_
for f in fragment_[0-9][0-9].tmp ; do
tr "\n" " " <$f
echo
rm $f
done