【发布时间】:2021-06-02 23:55:36
【问题描述】:
我有一个包含五行的文本文件parent.txt:
line 1
line 2
line 3
line 4
line 5
我想将该文件拆分为名为 child1...child5 的单独文件,为此我可以使用 split 这样的命令
spit -l 1 -d parent.txt child
但是,我希望每个新创建的文件都位于具有相同名称的文件夹中(例如,文件 child1 将位于文件夹 child1 中),但我不知道该怎么做。
暂时,我是这样写的:
n=`cat parent.txt | wc -l`;
for i in `seq 1 $n`;
do
mkdir -p $(printf "child%04i" $i);
cd $(printf "child%04i" $i);
split -l 1 -a 4 --numeric-suffixes=1 parent.txt child
cd ..
done
但它会输出每个文件夹中的每个子文件,这不是我需要的。
【问题讨论】: