Loops 使用循环从多个文件中提取行
我正在尝试创建一个循环,该循环允许我从多个文件中提取第18行到第5773行(打印所有列),这些文件采用CPMIR(1-6).sln格式,然后将它们分别输出到编号为Loops 使用循环从多个文件中提取行,loops,sed,output,extract,Loops,Sed,Output,Extract,我正在尝试创建一个循环,该循环允许我从多个文件中提取第18行到第5773行(打印所有列),这些文件采用CPMIR(1-6).sln格式,然后将它们分别输出到编号为batch[1-6].txt的文件中 我使用了在线找到的示例得出了以下代码: for i in {1..6}; do sed -n '{ '18,5773p;q' CPMIR'"${i}"'.sln }' > batch${i}.txt done 但是我从这里迷路了。我还是个新手,在编写代码的过程中不断摸索 谢谢你的帮助
batch[1-6].txt的文件中
我使用了在线找到的示例得出了以下代码:
for i in {1..6}; do
sed -n '{ '18,5773p;q' CPMIR'"${i}"'.sln }' > batch${i}.txt
done
但是我从这里迷路了。我还是个新手,在编写代码的过程中不断摸索
谢谢你的帮助 找到了另一个:并获得了下面的代码来执行此任务
for i in {1..6}; do
awk ' NR >=18 && NR <=5773 {print $0}' CPMIR${i}.sln > batch${i}.txt
done
{1..6}中i的;做
awk'NR>=18&&NR这可能适合您(GNU-sed¶llel):
请将示例输入和输出添加到您的问题中。您只需限定退出命令,让它在每一行上运行,请尝试185773p;5773q
parallel "sed '1,17d;5773q' CPMIR{}.sln >batch{}.txt" ::: {1..6}