Cum se numără liniile unui fișier prin linia de comandă
Cuprins:
- Cum să numărați liniile de fișiere de la terminal cu wc
- Cum să numărați liniile de date de ieșire prin conducte cu wc
Trebuie să obțineți numărul de linii ale unui fișier text sau document? Numărarea liniilor oricărui fișier este ușor la linia de comandă, iar comanda pentru numărarea liniilor este aceeași în toate sistemele de operare moderne bazate pe Unix, ceea ce înseamnă că acest truc de numărare a liniilor va funcționa la fel pe Mac OS și Mac OS X, Linux, BSD, și chiar și Windows cu shell Bash.
În scopurile noastre aici vom folosi cel mai direct instrument de numărare a liniilor disponibil la linia de comandă, wc. Utilitarul wc este capabil să afișeze numărul de linii, precum și să dezvăluie numărul de cuvinte și numărul de caractere. Accentul nostru aici este bineînțeles pe primul, așa că vom arăta cum să folosim wc pentru numărarea liniilor oricărui fișier text furnizat ca intrare.
wc definește o linie ca „un șir de caractere delimitat de un caracter de linie nouă”, adică doar liniile noi unice vor fi numărate ca linie. Deci, dacă într-un fișier nu există caractere de linie nouă, iar fișierul este doar o propoziție enormă sau un singur șir de comandă, va fi raportat ca o singură linie.
Cum să numărați liniile de fișiere de la terminal cu wc
- Deschide o fereastră de terminal dacă nu ai făcut-o deja (în Mac OS aplicația Terminal se găsește în /Aplicații/Utilități/)
- La promptul de comandă introduceți următoarea sintaxă a comenzii, înlocuind „nume fișier” cu fișierul pentru care doriți să numărați liniile
- Apăsați Return, veți vedea numărul de linii ale fișierului tipărit înaintea numelui fișierului
wc -l nume de fișier
Așa cum probabil ați ghicit, steag-l (L minuscul) este pentru „linie”.
De exemplu, rularea comenzii wc -l pe un fișier situat pe desktop numit „exampleFileToCountLines.txt ” ar arăta astfel:
% wc -l ~/Desktop/exampleFileToCountLines.txt 1213 /Users/Paul/Desktop/exampleFileToCountLines.txt
Așa cum puteți vedea în acest exemplu, numărul de linii din fișierul text dat este 1213, adică fișierul are 1.213 de linii.
Comanda wc funcționează la fel pe orice sistem de operare modern bazat pe Unix, inclusiv Mac OS, Linux, FreeBSD, Windows cu Bash și multe altele.
Folosirea wc pentru a număra liniile, cuvintele și numărul de caractere ale unui fișier
De asemenea, puteți rula comanda wc fără marcajul -l, care va dezvălui apoi numărul de linii, numărul de cuvinte și numărul de caractere, în această ordine. Ca:
wc /etc/hosts 9 32 214 /etc/hosts
Contrastă acea ieșire a comenzii cu aceeași comandă doar cu steag wc -l:
wc -l /etc/hosts 9 /etc/hosts
Acesta este doar numărarea liniilor unui fișier text ca intrare și nu modifică deloc fișierul. Dacă doriți să modificați fișierul, puteți adăuga manual numere de linie la un fișier text prin linia de comandă.
Cum să numărați liniile de date de ieșire prin conducte cu wc
De asemenea, puteți folosi wc pentru a număra liniile oricăror date introduse în el, de exemplu de la cat sau ls:
cat /etc/hosts | wc -l
Ieșirea în acel scenariu va fi pur și simplu numărul de linii din fișier, cum ar fi „9”.
Comanda wc este destul de îngrijită, puteți citi pagina de manual pentru wc pentru a obține și mai multe idei și trucuri pentru utilizare.
Acest lucru este, evident, conceput pentru linia de comandă, dar există și alte modalități de a obține numărul de linii și caractere ale fișierelor.
Le puteți număra manual pentru fișiere scurte, aplicații Mac terțe, cum ar fi BBEdit, afișează în mod implicit numărul de linie, iar dacă îl faceți pe vărul mic la BBEdit, cunoscut sub numele de TextWrangler, atunci puteți continua să afișați numerele de rând. și în TextWrangler. De asemenea, puteți crea un instrument de contorizare a cuvintelor și a caracterelor DIY pentru Mac ca serviciu. Și dacă se întâmplă să cunoașteți deja numărul de linie al unui fișier pe care doriți să-l accesați, puteți sări direct la un anumit număr de linie în TextEdit, deși, din păcate, TextEdit nu afișează numere de linie, ceea ce pare a fi o neglijare.