大きなファイルがあり、連続する50行ごとに15番目のファイルを印刷したいのですが。 および25日 行。
sed -n '15,25p' inputfile
このコマンドを変更して、15行目と25行目のみを印刷し、ファイル内の50行ごとにループする方法。
承認された回答:
awk 'NR % 50 == 15 || NR % 50 == 25'
明らかにポータブルな方法です。
GNU sed
に注意してください 代替案:
sed '15~50b;25~50b;d'
sed
を使用 、いつでも実行できます:
sed -n 'n;n;n;n;n;n;n;n;n;n;n;n;n;n;p;n;n;n;n;n;n;n;n;n;n;p;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n;n'
(次の行を14回取得し、印刷し、次の行を10回、印刷し、次の行を25回取得し、次のサイクルに戻ります(欠落している余分な行を取得して50にします))。