首页 > 解决方案 > 使用循环从多个文件中提取行

问题描述

我正在尝试创建一个循环,允许我从遵循格式 CPIR(1-6).sln 的多个文件中提取第 18 到 5773 行(打印所有列),然后将它们分别输出到编号的文件,batch[1-6].txt

我使用网上找到的示例来编写此代码:

for i in {1..6}; do
    sed -n '{ '18,5773p;q' CPMIR'"${i}"'.sln }' > batch${i}.txt
done

但我从这里迷路了。在我去编码和弄清楚它时仍然是新手。

谢谢你的帮助!

标签: loopssedoutputextract

解决方案


这可能对您有用(GNU sed 和并行):

parallel "sed '1,17d;5773q' CPMIR{}.sln >batch{}.txt" ::: {1..6}

推荐阅读