GNU/Linux >> Znalost Linux >  >> Linux

5 způsobů, jak spočítat počet řádků v souboru

V Linuxu můžete provést jeden úkol několika způsoby. Podobně, pokud chcete spočítat počet řádků v jednom nebo více souborech, můžete použít různé příkazy. V tomto článku se podělím o pět různých způsobů, včetně toho, který můžete použít k tisku celkového počtu řádků ve velkém souboru.

[ Také by se vám mohlo líbit:Jak zkopírovat velké množství souborů v Linuxu ]

1. Spočítat počet řádků pomocí příkazu wc

Jako wc znamená „počet slov “, je to nejvhodnější a nejjednodušší příkaz, jehož jediným účelem je počítání slov , postavy nebo čáry v souboru.

Předpokládejme, že chcete spočítat počet řádků v textovém souboru s názvem distros.txt .

$ cat distros

Můžete použít "-l" nebo "--line" možnost pomocí příkazu wc takto:

$ wc -l distros.txt

Můžete vidět, že wc také spočítá prázdný řádek a vypíše počet řádků spolu s názvem souboru. V případě, že chcete zobrazit pouze celkový počet řádků, můžete také skrýt název souboru přesměrováním obsahu souboru na wc pomocí levé lomené závorky (<) místo předání souboru jako parametru.

$ wc -l < distros.txt

Navíc, chcete-li zobrazit více řádků z více než jednoho souboru současně, musíte předat názvy souborů jako argumenty oddělené mezerou.

$ wc --lines distros.txt distros.txt distros.txt

Jiným způsobem můžete také využít příkaz cat pro přesměrování obsahu souboru na příkaz wc jako vstup pomocí kanálu ('|') .

$ cat distros.txt | wc -l

Ačkoli bude počítat také počet řádků v souboru, zde je použití cat zdá se nadbytečné.

2. Spočítat počet řádků pomocí příkazu Awk

Awk je velmi výkonný nástroj příkazového řádku pro zpracování textu. Pokud již znáte awk , můžete jej použít k několika účelům, včetně počítání počtu řádků v souborech.

[ Také by se vám mohlo líbit:Jak odstranit prázdné řádky v souborech pomocí Grep, Sed a Awk ]

Jeho zvládnutí však může chvíli trvat, pokud jste na úrovni začátečníka. Pokud jej tedy chcete použít pouze k počítání celkového počtu řádků v souboru, můžete si zapamatovat následující příkaz:

$ awk 'END {print NR}' distros.txt

Tady, NR je počet záznamů nebo řekněme čísla řádků v souboru zpracovávaném na END sekce.

3. Spočítat počet řádků pomocí příkazu Sed

Sed je také velmi užitečný nástroj pro filtrování a úpravu textu. Více než editor textových proudů můžete použít také sed pro počítání počtu řádků v souboru pomocí příkazu:

$ sed -n '$=' distros.txt

Zde '=' vytiskne aktuální číslo řádku na standardní výstup. Takže zkombinováním s -n volba, počítá celkový počet řádků v souboru předaný jako argument.

4. Spočítat počet řádků pomocí příkazu Grep

Pomocí dalšího užitečného příkazu pro vyhledávání vzorů grep , můžete získat celkový počet řádků v souboru pomocí '-e' nebo '--regexp' a '-c' nebo '--count' možnosti.

$ grep -e "$" -c distros.txt
Or 
$ grep -e "^" -c distros.txt

Zde '$' je regulární výraz představující konec řádku a '^' začátek řádku. Můžete použít kterýkoli z regulárních výrazů.

[ Také by se vám mohlo líbit:Jak najít soubory obsahující konkrétní textový řetězec v Linuxu ]

5. Počítat počet řádků pomocí příkazů nl a cat

Místo přímého získávání celkového počtu řádků můžete také vytisknout obsah souboru a získat celkový počet řádků nahlédnutím na číslo posledního řádku. Za tímto účelem nl je jednoduchý příkaz pro tisk dat s očíslovanými řádky.

$ nl distros.txt

U velkých souborů se nejeví jako vhodná metoda zobrazení všech dat v terminálu. Takže můžete také udělat propojení dat s příkazem ocas vytisknout pouze některé z posledních očíslovaných řádků.

$ nl distros.txt | tail -n2

Stejně tak příkaz kočka s '-n' lze také použít k tisku obsahu souboru s čísly řádků.

$ cat -n distros.txt | tail -n1
Závěr

Poté, co jste se naučili pět způsobů, jak spočítat počet řádků, musíte se ptát, který způsob je pro vás nejlepší? Podle mého názoru, ať už jste začátečník nebo pokročilý uživatel Linuxu, příkaz wc je nejjednodušší a nejrychlejší přístup.

Pokud se však právě učíte další výkonné nástroje, jako je grep , awk a sed , můžete také procvičovat tyto příkazy za tímto účelem, abyste zdokonalili své dovednosti.


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

  2. Jak počítat řádky v souboru v UNIX/Linux

  3. Spočítejte řádky všech souborů v adresáři Ubuntu

  1. Jak získat pouze počet řádků souboru

  2. Spočítejte počet znaků, slov a řádků v PowerShellu

  3. Změňte pořadí řádků v souboru

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

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

  3. Jak spočítat počet bajtů v souboru seskupením stejných bajtů?