GNU/Linux >> Znalost Linux >  >> Linux

Jak vytisknout řádky číslo 15 a 25 z každých 50 řádků?

Mám velký soubor a chtěl bych z každého vytisknout 50 řádků, 15. a 25. řádky.

sed -n '15,25p' inputfile

Jak upravit tento příkaz tak, aby tiskl pouze řádky 15 a 25 a aby se opakoval každých 50 řádků v souboru.

Přijatá odpověď:

awk 'NR % 50 == 15 || NR % 50 == 25'

by byl zřejmý přenosný způsob.

Všimněte si GNU sed alternativa:

sed '15~50b;25~50b;d'

S libovolným sed , vždy můžete:

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'

(získáte další řádek 14krát, vytiskněte, další řádek 10krát, vytiskněte, další řádek 25krát, zpět na další cyklus (který zachytí chybějící řádek navíc na 50)).


Linux
  1. Třídit a počítat Počet výskytů řádků?

  2. Počet řádků vydaných Ls?

  3. Jak počítat počet řádků v souboru v Linuxu (příklady wc a nl)

  1. Jak zjistit počet souborů v adresáři a podadresářích

  2. Jak vytisknout číslo v sestavě NASM?

  3. Jak zjistit a zjistit, že je program v mrtvém bodě?

  1. Jak zjistit počet vertikálních linek dostupných v terminálu?

  2. Jak najít poslední výskyt vzoru a vytisknout všechny řádky po posledním výskytu?

  3. Jak mohu přimět grep, aby vytiskl řádky pod a nad každým odpovídajícím řádkem?