GNU/Linux >> Znalost Linux >  >> Linux

Jak spočítat počet karet v každém řádku pomocí skriptu shell?

Pokud zacházíte s \t jako oddělovač pole bude o jeden méně \t než pole na každém řádku:

awk -F'\t' '{ print NF-1 }' input.txt > output.txt

sed 's/[^\t]//g' input.txt | awk '{ print length }' > output.txt

Na základě této odpovědi.


awk '{print gsub(/\t/,"")}' inputfile > output.txt

Tím získáte celkový počet karet v souboru:

od -c infile | grep -o "\t" | wc -l > output.txt

Tím získáte počet karet řádek po řádku:

awk '{print gsub(/\t/,"")}' infile > output.txt

Linux
  1. Jak získat počet souborů v adresáři pomocí příkazového řádku?

  2. Jak předat argument příkazového řádku do skriptu Shell?

  3. Chyba v počítání skriptu pro počet výskytů?

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

  2. Jak hledat soubory pomocí regulárního výrazu ve skriptu linuxového shellu

  3. Jak vložit nový řádek do skriptu prostředí Linux?

  1. Iterování přes každý řádek výstupu ls -l

  2. Jak při použití printf uniknout speciálním znakům ve skriptu shellu?

  3. Jak mohu spočítat počet složek na jednotce pomocí Linuxu?