使用循环从多个文件中提取行
Use loop to extract rows from multiple files
我正在尝试创建一个循环,它允许我从遵循格式 CPMIR(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
但我迷路了。对编码和弄清楚它还是个新手。
感谢您的帮助!
找到另一个 example: 并得到下面的代码来完成这项工作
for i in {1..6}; do
awk ' NR >=18 && NR <=5773 {print [=10=]}' CPMIR${i}.sln > batch${i}.txt
done
这可能适合您(GNU sed 和并行):
parallel "sed '1,17d;5773q' CPMIR{}.sln >batch{}.txt" ::: {1..6}
我正在尝试创建一个循环,它允许我从遵循格式 CPMIR(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
但我迷路了。对编码和弄清楚它还是个新手。
感谢您的帮助!
找到另一个 example: 并得到下面的代码来完成这项工作
for i in {1..6}; do
awk ' NR >=18 && NR <=5773 {print [=10=]}' CPMIR${i}.sln > batch${i}.txt
done
这可能适合您(GNU sed 和并行):
parallel "sed '1,17d;5773q' CPMIR{}.sln >batch{}.txt" ::: {1..6}