![Cum se dezvoltă o distribuție Linux personalizată de la zero](/f/17d9dd23e908345ae258e04451e9f1b8.gif?width=100&height=100)
Linia de comandă Linux are o mulțime de distracție în jurul său și multe sarcini obositoare pot fi efectuate foarte ușor, dar cu perfecțiune. Jocul cu cuvinte și caractere, frecvența acestora într-un fișier text etc. este ceea ce vom vedea în acest articol.
Singura comandă care ne vine în minte pentru modificarea liniei de comandă Linux pentru a manipula cuvinte și caractere dintr-un fișier text este comanda wc.
A 'toaleta„Comanda care reprezintă numărul de cuvinte este capabilă să tipărească Newline, număr de cuvinte și octeți dintr-un fișier text.
Pentru a lucra cu scripturile mici pentru a analiza fișierul text, trebuie să avem un fișier text. Pentru a menține uniformitatea, creăm un fișier text cu ieșirea comenzii man, așa cum este descris mai jos.
$ man man> man.txt
Comanda de mai sus creează un fișier text „man.txt„Cu conținutul„pagina manualului' pentru 'om‘Comanda.
Vrem să verificăm cele mai frecvente cuvinte, în creația de mai sus „Fisier text‘Prin rularea scriptului de mai jos.
$ cat man.txt | tr '' '2' | tr '[: upper:]' '[: lower:]' | tr -d '[: punct:]' | grep -v '[^ a-z]' | sortare | uniq -c | sort -rn | cap
7557 262 163 la 112 este 112 a 78 din 78 manual 76 și 64 dacă 63 este
Scriptul simplu de mai sus prezintă, în fișierul text, cele mai frecvent zece cuvinte care apar și frecvența lor de apariție.
Ce zici de descompunerea unui cuvânt în individ folosind următoarea comandă.
$ echo „echipa tecmint” | ori -w1
t e c m i n t t e a m
Notă: Aici, „-w1” este pentru lățime.
Acum vom descompune fiecare cuvânt dintr-un fișier text, vom sorta rezultatul și vom obține rezultatul dorit cu frecvența celor mai frecvente zece caractere.
$ fold -w1Eșantion de ieșire
8579 2413 e. 1987 a. 1875 t. 1644 i. 1553 n. 1522 o. 1514 s. 1224 r. 1021 lCe zici de obținerea celor mai frecvente caractere din fișierul text cu majuscule și minuscule diferit, împreună cu frecvența lor de apariție.
$ fold -w1Eșantion de ieșire
11636 2504 E 2079 A 2005 T 1729 I 1645 N 1632 S 1580 o. 1269 R 1055 L 836 H 791 P 766 D 753 C 725 M 690 U 605 F 504 G 352 Y 344.Verificați rezultatul de mai sus, unde este inclus semnul de punctuație. Permite eliminarea punctuației, cu „tr‘Comanda. Începem:
$ fold -w1Eșantion de ieșire
11636 2504 E 2079 A 2005 T 1729 I 1645 N 1632 S 1580 O 1550 1269 R 1055 L 836 H 791 P 766 D 753 C 725 M 690 U 605 F 504 G 352 YAcum am trei fișiere text, permiteți rularea unui script de linie de mai sus pentru a vedea ieșirea.
$ cat * .txt | ori -w1 | tr '[: lower:]' '[: upper:]' | sortare | tr -d '[: punct:]' | uniq -c | sort -rn | cap -8Eșantion de ieșire
11636 2504 E 2079 A 2005 T 1729 I 1645 N 1632 S 1580 OÎn continuare vom genera acele litere rare, care au cel puțin zece litere. Iată scriptul simplu.
$ cat man.txt | tr '' '2' | tr '[: upper:]' '[: lower:]' | tr -d '[: punct:]' | tr -d '[0-9]' | sortare | uniq -c | sort -n | grep -E '...' | capEșantion de ieșire
2 toate argumentele din interior sunt opționale 1 capabil vezi setlocale pentru detalii precise 1 opțiunile ab delimitate de nu pot fi utilizate împreună 1 realizate prin utilizarea variabilei de mediu mai puțin 1 un proces copil a returnat o ieșire diferită de zero starea 1 acționează ca și cum această opțiune ar fi furnizată folosind numele ca nume de fișier 1 activează formatul modului local și afișează fișierele manuale locale 1 acut accentNotă: Cele mai multe puncte din scriptul de mai sus până când sunt generate toate rezultatele. Putem folosi. {10} pentru a obține zece potriviri de caractere.
Aceste scripturi simple ne fac, de asemenea, să cunoaștem cele mai frecvente cuvinte și caractere care apar în limba engleză.
Asta este tot pentru acum. Voi fi din nou aici cu un alt subiect interesant și neobișnuit, demn de știut, pe care oamenilor le va plăcea să-l citească. Nu uitați să ne furnizați feedback-ul dvs. valoros în secțiunea de comentarii de mai jos.
Citește și: 20 de comenzi amuzante de Linux