Săptămâna trecută am început seria noastră Linux Hands-On pentru a crea o serie structurată care informează și educă cititorul despre ce este Linux, cum funcționează și, în același timp, asigurându-ne că își murdăresc mâinile încercând comenzile terminalului.
După cum sa menționat în prima parte a seriei, întreaga serie va fi o progresie logică în fiecare săptămână. Aceasta înseamnă că această parte va avea sens doar dacă ați trecut prin prima parte și ați încercat toate comenzile sau dacă ați cunoștințele de bază despre Linux și puteți să vă ocoliți. Dacă nu sunteți familiarizat cu aceste concepte, asigurați-vă că citeste prima parte, și apoi poți sări direct înăuntru.
În postarea de săptămâna aceasta, vom construi pe deasupra a ceea ce am tratat în postarea anterioară și vă vom spune cum puteți face niște lucruri mai complicate. Dacă ați avut întrebări precum cum să editați fișiere în Linux? Cum să vizualizați un proces în Linux etc. această postare va răspunde la acestea. Așa că, fără a mai pierde timpul, să trecem direct la comenzi.
Vom împărți comenzile în secțiuni, astfel încât să aibă sens să le parcurgem una câte una.
Ce vei învăța
- Manipularea fișierelor
- Potrivire de model
- Proces: Vizionare și ucidere
- Editarea fișierelor text
Bine, așa că acum că avem o structură de bază stabilită, să le parcurgem unul câte unul.
În postarea anterioară, trebuie să învățați cum să creați fișiere în Linux și cum să le eliminați. Să construim pe deasupra și să vedem mai întâi cum să vedem conținutul unui fișier.
Cat Command
Pentru a vizualiza conținutul unui fișier, folosim comanda cat. Definiția manuală a acestei comenzi este aceea că – comanda cat citește secvențial un fișier și imprimă rezultatul la ieșirea standard. În termeni simpli, înseamnă că fișierul imprimă conținutul unui fișier linie cu linie.
Să folosim un exemplu pentru a vedea cum funcționează comanda pisicii?
Iată sintaxa:
pisică FILENAME
Inlocuieste NUME DE FIȘIER cu unul al tău. După cum puteți vedea mai jos, comanda tocmai a tipărit conținutul fișierelor ghost.txt într-un format linie cu linie:

Acum că știm cum să vedem conținutul unui fișier, să învățăm cum să adăugăm conținut într-un fișier chiar din terminal, fără a folosi niciun editor (nu vă faceți griji, asta va veni foarte curând).
Operatori de redirecționare în Linux
Unul dintre modurile în care puteți adăuga (suprascrieți sau adăugați) conținutul unui fișier este prin utilizarea unuia dintre operatorii de redirecționare. În termeni simpli, operatorii de redirecționare permit utilizatorilor să controleze intrarea și ieșirea unei comenzi.
Din ceea ce ți-a trecut prin cap, iată un exemplu mai relatabil. Îți amintești ce a făcut comanda echo? A tipărit un șir pe terminal. Șirul a fost rezultatul comenzii echo. Folosind unul dintre operatorii de redirecționare, puteți utiliza de fapt acea ieșire și o puteți scrie într-un fișier.
Destul de vorbă, să vedem cum funcționează operatorul de redirecționare cu un exemplu.
Iată sintaxa pentru operatorul de redirecționare:
fișierul operator redirecționare_comandă
Aici, comanda este comanda terminalului care va scoate un șir de caractere și fișierul este fișierul real care va accepta acea ieșire. Există mai mulți operatori de redirecționare disponibili, dar să ne limităm domeniul de aplicare la scrierea în fișiere.
Pentru a face acest lucru, putem folosi unul dintre cei doi operatori de redirecționare, adică > și >>
În următoarea captură de ecran, puteți vedea cum funcționează. Am arătat în terminal că fișierul este inițial gol folosind comanda cat, apoi am adăugat conținut la fișier folosind comanda echo și, în final, am tipărit conținutul folosind comanda cat.
> operatorul lucrează în modul de suprascriere. Aceasta înseamnă că, dacă utilizați > operator pentru a scrie conținut într-un fișier, conținutul său anterior va fi suprascris. Acest lucru este afișat în captura de ecran de mai jos. După cum puteți vedea, conținutul anterior a fost înlocuit cu cel nou.

Acum întrebarea evidentă este ce dacă nu doriți să înlocuiți conținutul existent? Ei bine, există o versiune a operatorului de redirecționare care face exact asta.
Pentru a adăuga la un fișier, în loc să folosim > folosim >>
Iată sintaxa:
comandă >> nume de fișier
Și puteți vedea un exemplu de utilizare în captura de ecran de mai jos, la care a fost adăugat conținutul. Destul de îngrijit, nu? Sunt de acord că nu oferă aceeași flexibilitate ca un editor de text, dar pentru cazuri de utilizare mai mici își face treaba destul de bine.

În regulă, mergi!
Acum că știm cum să adăugăm conținut într-un fișier și cum să le vedem, ce zici de a afla cum să găsim fișiere în sistemul de fișiere?
găsiți comanda
Pentru a căuta fișiere în sistemul dvs. de fișiere, folosim comanda find. Comanda face practic ceea ce pretinde că face. Găsește un anumit nume de fișier sau un model regex.
Sintaxa de bază pentru același lucru ar fi următoarea:
găsiți expresia cale-nume
Ca întotdeauna, înlocuiți substituenții cu propriile valori.
cale spune comenzii find ce director să caute fișierul dat. The nume opțiunea specifică un model cu care trebuie să se potrivească căutarea.
Să vedem cum funcționează comanda find într-un exemplu de utilizare.

După cum se vede mai jos în exemplul de ieșire, comanda caută oricare .executabil fișierele din sistemul meu de fișiere și le trimite în consolă. Acum că avem câteva dintre comenzile de manipulare mai complexe sub centură, să mergem cu un pas mai departe.
Acum vom arunca o privire la modul în care putem căuta lucruri într-un fișier.
Comanda grep
grep înseamnă Expresia regulată globală și deși vom acoperi asta într-o postare viitoare, explicația de bază pentru ceea ce înseamnă este că este doar un șablon pe care grep îl folosește pentru a verifica șirurile pentru a găsi o potrivire. Nu vă faceți griji dacă nu are prea mult sens. Îl vom acoperi pe larg în partea 3.
Bine, așa că hai să testăm grep. Iată sintaxa testului nostru:
grep -i „șir pentru a se potrivi” numefișier.extensie
- i opțiunea va spune grep să ignore majuscule, astfel încât „HO” „ho” și „hO” vor fi considerate la fel. Șirul cu care să se potrivească este specificat sub ghilimele, care sunt apoi urmate de numele fișierului.

Bine, să vedem cum comanda grep într-o demonstrație. După cum s-a văzut mai sus, exemplul meu arată utilizarea grep în ambele moduri care țin cont de majuscule și minuscule și în modul care nu ține seama de majuscule.
Merită remarcat în acest moment că există n combinații diferite pentru o comandă și mai multe opțiuni pentru a merge cu ea. Ceea ce fac aici este să vă ofer un caz de utilizare general rotunjit, care va funcționa pentru cele mai multe cazuri simple, dar în cazul în care doriți să faceți totul, puteți cu siguranță să faceți un om la comandă pentru a descoperi toate opțiunile disponibile pentru a le folosi cu comanda.
Apoi, să vedem cum putem compara de fapt 2 fișiere diferite într-o manieră linie cu linie.
Comanda diff
Pentru a vedea cum diferă 2 fișiere (înțelegi?) folosim comanda diff. Este mai bine să-l vezi în acțiune pentru a înțelege cum funcționează de fapt, așa că haideți să intrăm imediat.
Iată sintaxa pentru comanda diff:
dif file1 file2
Și iată un exemplu de utilizare a comenzii diff Linux:

La prima vedere, s-ar putea să nu aibă sens complet, așa că haideți să descompunem rezultatul.
Prima linie a ieșirii diff va conține:
- numerele de rând corespunzătoare primului fișier
- o literă (a pentru adăugare, c pentru modificare sau d pentru ștergere)
- numerele de rând corespunzătoare celui de-al doilea fișier.
În rezultatul nostru de mai sus, „1,3c1” mijloace: „Liniile de la 1 la 3 din primul fișier trebuie modificate pentru a se potrivi cu liniile 1 din al doilea fișier.” Apoi ne spune care sunt acele linii în fiecare fișier:
- Liniile precedate de un < sunt linii din primul fișier
- Liniile precedate de > sunt linii din al doilea fișier.
Mergând mai departe, vom vedea cum putem afla despre liniile repetate dintr-un fișier dat.
Comanda uniq
Comanda uniq este folosită pentru a afla liniile repetate împreună cu numărul lor și alte detalii similare. Dacă îl ocupi, spune că este folosit pentru a filtra sau a raporta linii repetate dintr-un fișier. Ca și în cazul aproape tuturor comenzilor, comanda uniq are, de asemenea, o grămadă de opțiuni pentru a merge împreună cu ea.
Dar, de dragul conciziei și pentru a vă asigura că învățați un număr mai mare de comenzi în loc să învățați prea multe despre o singură comandă, vom trage doar un exemplu minim și puteți explora mai multe folosind comanda man.
Bine, iată sintaxa pentru comanda uniq:
uniq -options nume de fișier
Acum să vedem un exemplu pentru a afla cum funcționează comanda uniq în Linux.

Să defalcăm eșantionul foarte repede. The -c opțiunea spune comenzii uniq să imprime a conta împreună cu rezultatul și următoarea opțiune este nume de fișier care este furnizat către uniq.
După cum puteți vedea în exemplul de mai sus, a tipărit numărul liniilor repetate, care în cazul nostru a fost 2.
Asta ar trebui să facă acest lucru pentru toate comenzile pe care trebuie să le cunoașteți pentru a vă asigura că puteți rezolva fișierele, dar există o parte foarte importantă pe care nu am acoperit-o până acum și este legată de drepturile de acces.
Vedeți, în lumea reală, nu doriți ca toate fișierele dvs. să aibă un acces global de citire-scriere, ceea ce înseamnă că oricine poate pur și simplu să meargă și să facă editări într-un fișier. Anumite fișiere trebuie protejate împotriva falsificării. Aici intervine controlul accesului, iar Linux și Unix îl gestionează surprinzător de bine cu următoarea comandă.
Comanda chmod
Comanda chmod înseamnă schimbarea modului și, practic, vă permite să modificați modul în care un fișier poate fi accesat și de către cine poate fi accesat.
Sintaxa pentru chmod este destul de simplă și arată astfel:
chmod -options permisiuni nume de fișier
În timp ce opțiunile și numele fișierului nu necesită elaborare, fișierul permisiuni partea are nevoie de o explicație.
Permisiunile pentru fișiere în Linux se învârt în jurul 3 scopuri, utilizator, grup, și alții. Permisiunile sunt la rândul lor de 3 tipuri citit, scrie, și a executa. Înseamnă că fiecare domeniu are 3 permisiuni, ceea ce înseamnă un total de 3 seturi de domenii cu câte 3 permisiuni în fiecare.
Având în vedere acest lucru, iată un exemplu de utilizare pentru a vă arăta cum funcționează chmod:
chmod u=rwx, g=rx, o=r numefișier.txt
Aici u standuri pentru utilizator, g pentru grup și o pentru alţii. Si = semnul este folosit pentru a atribui permisiunea citește (r), scrie (w), și executa (x) la fiecare domeniu de aplicare. Virgula separă fiecare sarcină.

Există o prescurtare pentru alocarea permisiunilor și folosește notația octală. În notația octală:
- 4 înseamnă citire
- 2 înseamnă scriere
- 1 înseamnă executare
- 0 înseamnă nicio permisiune
Deci, conform notației de mai sus numărul 7 va acorda permisiunea de citire, scriere și executare (4 + 2 + 1). Îl puteți amesteca și potrivi în consecință și iată un exemplu de caz de utilizare folosind notația octală:
chmod 755 starwars.txt

În acest exemplu, fișierul Starwars are:
- permisiunea de citire, scriere și executare pentru utilizator.
- citiți și executați pentru grup.
- executa pe altii.
Bine! ne apropiem de sfârșitul unei părți a postării care gestionează fișierele. Această comandă finală vă va permite să arhivați un fișier/comprimați un fișier. Arhivarea unui fișier este utilă atunci când doriți să mutați o grămadă de fișiere între sisteme, asigurându-vă în același timp că evitați coruperea acestora.
Comanda tar
Comanda tar înseamnă arhivare pe bandă și vă permite să creați, să manipulați și să extrageți fișierele arhivate.
Iată sintaxa de bază a comenzii pentru a vedea cum funcționează:
tar -opțiuni nume fișier1 nume fișier1 …. nume de fișier N
Să vedem un exemplu de utilizare cu câteva opțiuni. Este foarte încurajat să vă jucați cu eșantionul și apoi să îl explorați singur pentru a descoperi cazuri de utilizare mai interesante.
tar -c -f compressed.zip ghost.txt starwars.txt

Să-l descompunem. The -c și -f comenzile sunt doar câteva dintr-o listă de multe, dar iată ce fac. The -c opțiunea îi spune comenzii să creați o arhivă nouă și -f este utilizat pentru a specificați numele fișierului pentru arhiva care în acest caz este compressed.zip, comanda tar poate crea arhive în .zip, .tar, .rar și alte formate, așa că asigurați-vă că alegeți unul care se potrivește nevoilor dvs
Acum că știți cum să comprimați fișierele, să vedem cum să le extragem. Noi folosim -x și -f opțiunile din comanda tar pentru a extrage un fișier, the -x opțiunea spune tar să extrageți fișierul și -f este utilizat pentru a specificați numele fișierului așa cum se arată în exemplul de mai jos:

Bine, în sfârșit am trecut de partea de gestionare a fișierelor a postării. Ura! Ai făcut o treabă grozavă ajungând până aici. Vom vorbi acum despre procese.
În terminologia Linux, un proces este un program în execuție în prezent, care efectuează o sarcină specifică. Procesele sunt dinamice și se schimbă constant pe măsură ce utilizatorul comută între aplicații.
documentație Linux vorbește despre procese în detaliu și vă încurajez să citiți odată ce ați terminat cu această postare.
Acum că știm ce este un proces, să vedem cum să le vedem.
ps Comandă
Comanda ps ne permite să vedem ce procese se execută în prezent pe o mașină. Vine cu o varietate de opțiuni, dar iată o utilizare minimă care arată toate procesele care rulează în prezent ca root.
Sintaxa este următoarea
ps -opțiune
În cazul nostru, vom folosi -u opțiunea care va afișa procesele care rulează ca root.

Acum că știi cum să vezi procesele, ce zici să înveți cum să le ucizi?
Comanda ucidere
Comanda kill este folosită pentru a opri sau a încheia un anumit proces fără a vă deconecta sau a reporni computerul. Este demn de remarcat faptul că comanda kill nu oprește de fapt un proces, ci doar trimite un semnal unui proces, iar semnalul spune procesului ce trebuie făcut. În mod implicit, atunci când nu este specificat un semnal 15 denumit SIGTERM este trimis procesului și dacă acesta nu reușește un semnal mai puternic 9 SIGKILL este trimis la proces, cu toate acestea, pentru majoritatea cazurilor normale de utilizare, tot ce trebuie să specificați pentru a opri un proces este că este PID.
Iată sintaxa pentru comanda kill:
ucideți [semnal sau opțiuni] PID-uri
Și iată un demo:

Fiți foarte atenți când ucideți un proces. Omoarea unui proces critic al sistemului poate face ca mașina să se comporte anormal. Dacă totuși reușiți să faceți acest lucru, asigurați-vă că reporniți sistemul o dată pentru a-și restabili execuția normală.
Bine, acum că am acoperit câteva motive cu comenzile terminalului, să vorbim despre o modalitate ușoară de a face modificări/a adăuga conținut la un fișier. Cu toții folosim editori de text precum Visual Studio Code sau Atom, dar din moment ce scopul acestei serii este de a vă pune pe toți confortabil și confortabil cu terminalul, de ce să nu explorați un editor de bază în terminalul însuși?
Comanda nano
Nano (crede-mă) reprezintă Nale lui ano ANULEditorul acesta și este un editor gratuit, ușor și cu sursă deschisă, care vă permite să editați fișiere în terminal, este un editor de text nativ ca mediu cu comenzile obișnuite cu care sunteți familiarizat.
Pentru a invoca nano/a deschide un fișier în nano, tastați comanda în următoarea sintaxă:
nano FILENAME
Dacă fișierul există, nano l-ar deschide și, în caz contrar, va crea un fișier nou cu acel nume și îl va deschide. Editorul în sine destul de minimal și, spre deosebire de fratele său mai mare (și urat) Vim/Vi, nu te înnebunește cu comenzile notoriu de dificile. Pentru a naviga în interiorul fișierului, utilizați tastele săgeți obișnuite. Pentru a elimina conținut, folosiți în continuare tasta ștergere/backspace și pentru a vă gestiona clipboard-ul folosiți familiarul Ctrl+C, Ctrl+V etc.

Editorul prezintă cele mai utilizate operațiuni, cum ar fi părăsirea editorului pentru dvs. în jumătatea de jos a ecranului. Înainte de a renunța la utilizarea Ctrl+X, vi se va solicita să salvați modificările pe care le-ați făcut. Sigur că Vim există mai mult timp, dar în opinia mea personală, nu este altceva decât o trecere la cultura hippie. Cel mai mult poți obține din a fi un profesionist la Vim ar fi să faci o laudă și se termină acolo. Nu există absolut niciun motiv să-și piardă timpul prețios învățând cum să folosească Vim. Acestea fiind spuse, am ajuns în sfârșit la sfârșitul părții 2.
Comenzi Linux pentru utilizatorii intermediari: rezumat
În partea 2 a seriei Linux Hands On, am construit deasupra fundației pe care am pus-o Partea 1. Ne-am descurcat să manipulăm fișierele și să le manipulăm. De asemenea, am învățat un concept complet nou numit procese și cum să le omorâm. Și am încheiat această parte cu o prezentare generală a editorului de text Nano. Asta ar fi tot pentru săptămâna asta. Până să revenim săptămâna viitoare cu partea 3, asigurați-vă că vă acordați suficient timp pentru a juca cu comanda distribuită în această postare. Nu fi copleșit de numărul de comenzi de acolo, este nevoie de mult timp pentru ca aceste lucruri să devină memorie musculară. Până când se întâmplă acest lucru, experiența practică este cel mai bun prieten al tău.
Vă mulțumim pentru aceste serii Linux. Am trecut prin asta pe deplin și mi s-a părut foarte util. Mai ales videoclipuri. Uneori este greu de urmărit articolul, așa că am descărcat videoclipul și l-am învățat. Acum simt că știu o cantitate bună de Linux pentru a începe să fac ceva în el. Mulțumesc pentru că aceste postări m-au ajutat foarte mult.