我有一本文本格式的书。我想将这本书分成几个文件,每个文件包含一个章节。因此我使用以下命令:
awk '/Chapter/{i++}{print > "chap"i}' "$f.txt"
其中 $f 只是 for 循环中的变量。但我注意到这些文件被命名为:
chap1
chap9
chap11
他们是添加前导零的方法吗?所以这些文件被命名为:
chap001
chap009
chap011
我使用/bin/sh
作为默认外壳。
答案1
单程:
awk '/Chapter/{i=sprintf("%03d",i+1)}{print > "chap"i}' "$f.txt"