Linux Tutorial – 6. Editorul de text Vi

Introducere

Dominați editorul de text Vi și învățați cum să faceți editări complexe în fișierele dvs. cu mai puțin timp și efort.

În ultima secțiune am creat câteva fișiere, dar acestea erau goale. Un pic plictisitor, dar trebuie să începem de undeva. În această secțiune ne vom uita la un instrument pentru a pune conținut în fișiere și pentru a edita și acel conținut. Vi este un editor de text care, cel mai probabil, este foarte diferit de orice editor pe care l-ați folosit până acum. Îți va lua ceva timp să te obișnuiești cu el, dar odată ce o vei face îți vei da seama că este de fapt destul de puternic. Este ca și cum ai scrie la tastatură, la început învățarea este incomodă și te întrebi de ce te deranjezi, dar odată ce te obișnuiești cu el nu vei mai vrea să te întorci înapoi.

Chiar dacă nu folosești Vi tot timpul, vei descoperi cu siguranță că modelele de lucru pe care le dezvolți în învățarea editorului pot fi transferate cu ușurință la alte programe și cu mare efect.

Această secțiune și următoarele câteva secțiuni formează de fapt fundația pentru ultimele câteva secțiuni în care le vom pune pe toate împreună și vom începe să facem niște lucruri cu adevărat ciudate. Am ales să mă uit mai întâi la Vi pentru ca mintea voastră să aibă puțin timp să proceseze și să îi dea un sens în pregătirea pentru mai târziu, când vom avea nevoie de el.

Vi este un instrument foarte puternic. În această secțiune, scopul meu nu este de a acoperi tot ceea ce poate face Vi, ci de a vă pune la punct cu elementele de bază. La sfârșitul secțiunii voi oferi câteva link-uri către resurse unde puteți învăța Vi mai departe. Vă recomand cu căldură să vă uitați la câteva dintre ele.

Un editor de linii de comandă

Vi este un editor de text în linie de comandă. După cum ați fi destul de conștient acum, linia de comandă este un mediu destul de diferit de GUI. Este o singură fereastră doar cu intrare și ieșire de text. Vi a fost proiectat pentru a funcționa cu aceste limitări și mulți ar spune că, în consecință, este de fapt destul de puternic. Vi este conceput ca un editor de text simplu (similar cu Notepad pe Windows sau Textedit pe Mac), spre deosebire de o suită de procesare a textelor, cum ar fi Word sau Pages. Cu toate acestea, are mult mai multă putere în comparație cu Notepad sau Textedit.

Ca urmare, trebuie să renunțați la mouse. Totul în Vi se face prin intermediul tastaturii.

Există două moduri în Vi. Modul Insert (sau Input) și modul Edit. În modul de introducere puteți introduce sau introduce conținut în fișier. În modul de editare vă puteți deplasa în fișier, puteți efectua acțiuni precum ștergerea, copierea, căutarea și înlocuirea, salvarea etc. O greșeală frecventă este aceea de a începe să introduceți comenzi fără a reveni mai întâi în modul de editare sau de a începe să introduceți date de intrare fără a intra mai întâi în modul de inserție. Dacă faceți oricare dintre acestea, este în general ușor de recuperat, așa că nu vă faceți prea multe griji.

Când rulăm vi, în mod normal îl lansăm cu un singur argument în linia de comandă, care este fișierul pe care doriți să îl editați.

vi <file>

Dacă uitați să specificați un fișier, există o modalitate de a deschide un fișier în vi, dar cel mai simplu este să ieșiți din vi și să încercați din nou. De asemenea, nu uitați că atunci când specificăm fișierul poate fi cu o cale absolută sau relativă.

Să ne scufundăm și să începem. Îmi va fi greu să vă demonstrez multe din aceste lucruri, așa că în schimb vă voi enumera ceea ce vreau să introduceți și va trebui să încercați și să vedeți ce se întâmplă.

În primul rând să ne mutăm în directorul pe care l-ați creat în secțiunea despre manipularea fișierelor. Vom crea câteva fișiere, iar acest lucru le va ține departe de lucrurile obișnuite.

Acum vom edita primul nostru fișier.

  1. vi firstfile

Când rulați această comandă va deschide fișierul. Dacă fișierul nu există, atunci îl va crea pentru dvs. și apoi îl va deschide. (nu este nevoie să atingeți fișierele înainte de a le edita) După ce intrați în vi, acesta va arăta cam așa (deși, în funcție de sistemul pe care vă aflați, poate arăta ușor diferit).

  1. ~
  2. ~
  3. ~
  4. ~
  5. ~
  6. „firstfile”

Întotdeauna începeți în modul de editare așa că primul lucru pe care îl vom face este să trecem în modul de inserție apăsând i. Vă puteți da seama când sunteți în modul inserare deoarece colțul din stânga jos vă va spune.

  1. ~
  2. ~
  3. ~
  4. ~
  5. ~
  6. ~
  7. ~
  8. ~
  9. — INSERT —

Acum tastați câteva rânduri de text și apăsați Esc care vă va duce înapoi în modul editare.

Salvare și ieșire

Există câteva moduri de a face acest lucru. Toate fac, în esență, același lucru, așa că alegeți modul pe care îl preferați. Pentru toate acestea, asigurați-vă mai întâi că sunteți în modul de editare.

Dacă nu sunteți sigur dacă sunteți sau nu în modul de editare, vă puteți uita în colțul din stânga jos. Atâta timp cât nu scrie INSERT, sunteți în regulă. Alternativ, puteți apăsa Esc pentru a fi siguri. Dacă sunteți deja în modul de editare, apăsarea Esc nu face nimic, așa că nu veți face niciun rău.

Majoritatea comenzilor din vi sunt executate imediat ce apăsați o secvență de taste. Orice comandă care începe cu două puncte ( : ) necesită să apăsați <enter> pentru a finaliza comanda.

Salvați și ieșiți din fișierul pe care îl aveți deschis în acel moment

Alte moduri de vizualizare a fișierelor

vi ne permite să edităm fișiere. Dacă am dori, am putea să o folosim și pentru a vizualiza fișiere, dar există alte două comenzi care sunt puțin mai convenabile în acest scop. Prima este cat, care înseamnă, de fapt, concatenare. Scopul său principal este de a uni fișiere, dar în forma sa cea mai elementară este utilă doar pentru vizualizarea fișierelor.

cat <file>

Dacă executați comanda cat, dându-i un singur argument de linie de comandă care este fișierul pe care tocmai l-am creat, veți vedea conținutul acestuia afișat pe ecran, urmat de prompt.

Dacă executați din greșeală cat fără să-i dați un argument de linie de comandă, veți observa că cursorul se mută la linia următoare și apoi nu se întâmplă nimic. Pentru că nu am specificat un fișier, cat citește în schimb de la ceva numit STDIN (despre care vom învăța în secțiunea „Canalizări și redirecționări”, care are ca valoare implicită tastatura. Dacă tastați ceva și apoi apăsați <enter>, veți vedea cum cat va oglindi intrarea dumneavoastră pe ecran. Pentru a ieși de aici puteți apăsa <Ctrl> + c care este semnalul universal pentru Anulare în Linux.

De fapt, ori de câte ori aveți probleme puteți apăsa în general <Ctrl> + c pentru a ieși din încurcătură.

  1. cat firstfile
  2. aici veți vedea
  3. orice conținut pe care l-ați
  4. introdus în fișier

Această comandă este bună atunci când avem de vizualizat un fișier mic, dar dacă fișierul este mare, atunci cea mai mare parte a conținutului va zbura pe ecran și vom vedea doar ultima pagină de conținut. Pentru fișiere mai mari există o comandă mai potrivită care este less.

less <file>

less vă permite să vă deplasați în sus și în jos în cadrul unui fișier folosind tastele săgeată. Puteți merge înainte o pagină întreagă folosind bara de spațiu sau înapoi o pagină apăsând b. Când ați terminat puteți apăsa q pentru a ieși.

Aruncați o privire la fișierul pe care tocmai l-ați creat acum folosind aceste două comenzi.

Navigația într-un fișier în Vi

Acum să ne întoarcem în fișierul pe care tocmai l-am creat și să introducem mai mult conținut. În modul de inserare puteți folosi tastele săgeată pentru a deplasa cursorul. Introduceți încă două paragrafe de conținut, apoi apăsați Esc pentru a vă întoarce în modul de editare.

Mai jos sunt câteva dintre numeroasele comenzi pe care le puteți introduce pentru a vă deplasa în fișier. Jucați-vă cu ele și vedeți cum funcționează.

  • Tastele săgeată – deplasează cursorul în jur
  • j, k, h, l – deplasează cursorul în jos, în sus, stânga și dreapta (similar cu tastele săgeată)
  • ^ (caret) – deplasează cursorul la începutul liniei curente
  • $ – deplasează cursorul la sfârșitul liniei curente
  • nG – se deplasează la a n-a linie (de exemplu, 5G se deplasează la a 5-a linie)
  • G – se deplasează la ultima linie
  • w – se deplasează la începutul cuvântului următor
  • nw – avansează n cuvinte (ex. 2w avansează două cuvinte)
  • b – se deplasează la începutul cuvântului anterior
  • nb – se deplasează înapoi n cuvinte
  • { – se deplasează înapoi cu un paragraf
  • } – se deplasează înainte un paragraf

Dacă tastați :set nu în modul de editare în vi, acesta va activa numerele de linie. Găsesc că activarea numerelor de linie face ca lucrul cu fișierele să fie mult mai ușor.

Eliminarea conținutului

Am văzut că dacă vrem să ne deplasăm în vi avem la dispoziție destul de multe opțiuni. Câteva dintre ele ne permit, de asemenea, să le precedăm cu un număr pentru a ne deplasa de atâtea ori. Ștergerea funcționează similar cu mișcarea, de fapt, mai multe comenzi de ștergere ne permit să încorporăm o comandă de mișcare pentru a defini ceea ce va fi șters.

Mai jos sunt câteva dintre multele moduri în care putem șterge conținut în vi. Jucați-vă acum cu ele. (consultați, de asemenea, secțiunea de mai jos privind anularea, astfel încât să puteți anula ștergerile.)

  • x – șterge un singur caracter
  • nx – șterge n caractere (de exemplu 5x șterge cinci caractere)
  • dd – șterge linia curentă
  • dn – d urmat de o comandă de mișcare. Șterge până acolo unde v-ar fi dus comanda de mișcare. (de exemplu d5w înseamnă ștergerea a 5 cuvinte)

Anulare

Anularea modificărilor în vi este destul de ușoară. Este vorba de caracterul u.

  • u – Anulează ultima acțiune (puteți continua să apăsați u pentru a continua să anulați)
  • U (Notă: majusculă) – Anulează toate modificările la linia curentă

Mai departe

Acum putem introduce conținut într-un fișier, ne putem deplasa în fișier, șterge conținut și anula, apoi salva și ieși. Acum puteți face editare de bază în vi. Totuși, aceasta este doar o atingere a suprafeței a ceea ce poate face vi. Nu voi intra în toate detaliile aici (cred că v-am aruncat deja destule în față), dar vă voi da câteva lucruri pe care ați putea dori să le cercetați pentru a vă îmbunătăți experiența în vi. O căutare de bază în motorul de căutare ales de dumneavoastră pentru vi <inserați conceptul aici> vă va găsi multe pagini cu informații utile. Există, de asemenea, multe foile de trișat vi care enumeră toate comenzile disponibile pentru dumneavoastră.

  • copy and paste
  • search and replace
  • buffers
  • markers
  • ranges
  • settings

Distracție plăcută și nu uitați să continuați să lucrați. vi va fi dureros la început, dar cu practică va deveni în curând prietenul dumneavoastră.

Summary

vi Editați un fișier. cat Vizualizați un fișier. less Convenabil pentru vizualizarea fișierelor mari.
Fără mouse vi este un editor de text în care totul se face la tastatură. Dacă puteți tasta la atingere, atunci acesta este excelent. Dacă nu, atunci poate ar trebui să vă gândiți să învățați. Comenzi de editare Există multe dintre ele. Practica este cheia pentru a le reține pe cele mai des folosite și utile.

Activități

Să ne jucăm cu niște conținut.

  • Începeți prin a crea un fișier și a introduce niște conținut în el.
  • Salvați fișierul și vizualizați-l atât în cat cât și în less
  • Întoarceți-vă în fișier în vi și introduceți mai mult conținut.
  • Mutați-vă în jurul conținutului folosind cel puțin 6 comenzi de mișcare diferite.
  • Jocati-vă cu mai multe dintre comenzile de ștergere, în special cu cele care încorporează o comandă de mișcare. Amintiți-vă că puteți anula modificările, astfel încât să nu trebuiască să continuați să introduceți conținut nou.

.

Lasă un răspuns

Adresa ta de email nu va fi publicată.