Faceți căutări pe acest blog

sâmbătă, 23 iunie 2012

Nano: editor text CLI

Pe lângă aplicațiile grafice pentru editarea și modificarea fișierelor text (kwrite, kate, gedit, etc) există și unele pentru linia de comandă: nano, pico, joe, mcedit, vi/ vim, emacs, etc., utilitare foarte convenabile și folositoare.
 Aceste editoare text CLI pot fi utilizate atât în interiorul interfeței grafice (în consolă/ terminal), dar mai ales în afara interfeței grafice, în terminalul tty.
 Poate cel mai simplu și ușor de folosit din aceste utilitare este nano, dar asta nu înseamnă că nu este și bine dotat și capabil.

 INSTALARE
În funcție de distribuția folosită, este posibil să aveți deja instalat nano, cum e cazul cu Arch Linux, sau trebuie instalat folosind package managerul distribuției.

 UTILIZARE
 Comanda implicită de lansare nano este:
nano opțiuni fișier      (nano +15,12 -t .bashrc de exemplu, unde +15,12 reprezintă una din opțiunile disponibile, cea referitoare la numărul de linii și coloane unde va fi postat direct cursorul, -t este opțiunea pentru salvarea implicită, directă, automată, fără confirmare a modificărilor la închiderea nano, iar .bashrc este fișierul țintă, cel editat)
 Înainte să vedem câteva opțiuni utile trebuie spus faptul că nano poate nu numai edita fișiere text ci le poate și crea. Dacă pasăm comenzii nano un nume de fișier inexistent, în fereasta nano deschisă nu va apărea text scris, va fi un fișier gol, iar dacă la închidere alegem să salvăm modificările (chiar dacă nu scriem/ modificăm nimic în acel fișier, salvarea modificărilor reprezintă acceptarea creării acestuia!), acest fișier va fi creat.
 Putem insera în acel fișier conținutul altui fișier text (total sau parțial)apăsând Ctrl+r și salvând, și nu neapărat doar cu fișiere goale! De exemplu avem personalizat afișajul consolei pentru contul de utilizator și dorim să personalizăm și contul de root:
- edităm ca root fișierul de configurare /root/.bashrc;
- includem în acesta .bashrc cu Ctrl+r;
- păstrăm liniile ce ne interesează, le ștergem pe celelalte;
- salvăm modificarea fișierului /root/.bashrc;
- la următoarea logare ca root vom avea promptul, mesajul de întâmpinare, aliasurile și funcțiile din ~/.bashrc disponibile pentru contul de root.



 După cum puteți observa fereastra nano cuprinde un mic ”manual” implicit, căteva informații utile:
1- versiunea nano;
2- numele fișierului editat;
3- bara de ”unelte”, aici avem date scurtăturile valabile. ^ reprezintă tasta Ctrl, M reprezintă tasta Alt, deci ^G este combinația Ctrl+G, așa intrăm în meniul Help, ^X este Ctrl+X, combinație pentru închiderea nano.
 Combinația pentru salvarea modificărilor în text este Ctrl+O (sau tasta funcțională F3) și confirmare cu Enter, alternativ putem folosi la pornirea nano opțiunea -t (nerecomandat) sau chiar Ctrl+X (sau tasta funcțională F2) pentru ieșire, iar nano ne va întreba dacă salvăm modificările, apăsăm y pentru confirmare, n pentru anularea modificărilor și păstrarea fișierului editat în forma inițială iar ^C (Ctrl+c) anulează închiderea nano.

 Rețineți faptul că puteți edita cu nano orice fișier text, dar pentru a modifica acel fișier trebuie să aveți permisiunile necesare, deci pentru a lucra cu fișiere din afara /home/user sau folosiți contul de root sau căpătați permisiuni temporare cu sudo.

 Opțiuni utile:
-t       = salvează automat modificările;
+x,y   = la deschiderea fișierului cursorul va fi poziționat la rândul și coloana indicate, x= numărul liniei, y= numărul coloanei; nano +7,20 cale_către_fișier va deshide fișierul, cursorul fiind poziționat pe linia 7, coloana 20 în loc linia 1, coloana 1, cum e implicit;
-B     = face backup fișierului modificat, exact cum fac kwrite, kate, gedit, lângă fișierul respectiv apare un fișier cu vechiul conținut, numit fișier~ (de exemplu modificând .bashrc va apărea și .bashrc~;
-C     = dacă avem activată opțiunea de backup, putem alege locația, directorul unde salvăm fișierul respectiv. Să spunem că avem creat un director special unde salvăm așa ceva, Documents/backups, în acest caz comanda va fi:
nano -B -C Documents/backups .bashrc
 La final, în directorul Documents/backups va fi salvat vechiul fișier sub numele !home!user.bashrc~, unde user va fi înlocuit de numele corect al utilizatorului, iar .bashrc de numele corect al fișierului modificat. După cum cred c-ați înțeles, numele fișierului de backup e format de fapt din locația acestuia (! înlocuiește de fapt /)și numele exact, plus simbolul ~, simbol care ne arată că e vorba de un backup. Deci modificarea cu sudo nano -B -C Desktop/diverse /etc/rc.conf va salva fișierul original în directorul Desktop/diverse sub numele !etc!rc.conf~; Dacă nu am pasat nano opțiunea de backup, putem face oricum backup apăsând combinația de taste Alt+B în interiorul ferestrei nano cu fișierul editat, iar fișierul de backup va fi salvat în aceeași locație, sub același nume plus ~;
-D     = afișează informațiile nu în culori inversate, ci cu caractere bold.
 Toate opțiunile sunt disponibile dând comanda man nano în terminal.

 Mod folosire pe scurt:
1- nano fișier  = edităm un fișier;
2- navigăm cu tastele săgeți în direcția dorită; deasemeni putem apăsa Alt și + sau Alt și -; în terminalul din interfața grafică putem naviga și cu scroll mouse;
 Putem merge direct într-o poziție dată cu Alt+G și tastăm linia și coloana unde dorim să ajungem (numerele liniei și coloanei vor fi despărțite de virgulă: 8,12 reprezintă linia 8, coloana 12, DAR dacă linia respectivă nu conține atâtea coloane cursorul va fi poziționat la începutul liniei, pe coloana 1 pentru linii goale, fără text, sau la finalul liniei pentru liniile cu text, dar care nu au atâtea coloane);
 Navigăm inainte și înapoi câte un cuvânt cu Ctrl+ Spațiu (tasta Space) și Alt+ Spațiu;
 Sărim la începutul liniei cu Ctrl+a și la finalul acesteia cu Ctrl+e;
 Sărim la finalul fișierului cu Alt+ /, sau la început cu Alt+ \;
 Navigăm cu dimensiunea afișată a ferestrei înainte și înapoi cu Ctrl+v și Ctrl+ y;
 Căutăm un termen cu Ctrl+w: în partea de jos a ferestrei va apărea bara de search, tastăm stringul de căutare, apăsăm Enter, cursorul va ”sări” la acesta;
 Înlocuim un termen folosind Alt+ r, va apărea bara de jos unde scriem termenul ce va fi înlocuit - Enter, bara se va schimba cu una unde scriem termenul ce-l va înlocui pe cel inițial.
 Aflăm numărul de cuvinte, linii și caractere din fișier folosind Alt+d;



 IMPORTANT: în funcție de comanda dată, bara de unelte de jos va fi actualizată cu noi opțiuni/ shortcuturi, dacă ați greșit ceva, nu e o tragedie, puteți anula, modifica, etc, citiți ce scrie în acel ”meniu”!
3- închidem nano:
 a- Ctrl+O și apoi Enter pentru salvarea modificărilor;
 b- Ctrl+X și y sau n la chestionarea nano pentru salvarea sau anularea modificărilor operate în fișierul editat.

 Actualizare: îmi cer scuze, am folosit atât notații precum Ctrl+X cât și Ctrl+ x, prima variantă deoarece așa e afișată în fereastra nano, a doua variantă din obișnuință și dorința de corectitudine, eu de obicei folosesc majuscule (de exemplu X în loc de x) pentru a indica Shift+literă (Shift+x = X...). În TOATE combinațiile de taste de mai sus, indiferent de modul de notare e vorba DOAR de Ctrl sau Alt și tasta specificată, fără Shift, e mai simplu!!!
 Totuși trebuie să rețineți că comenzile în fereastra nano pot fi date și cu majuscule și cu minuscule, de exemplu confirmarea modificărilor se va face și la apăsarea y și la apăsarea Y (Shift+ y)...


 Rulare nano în tty/ fbterm/ screen:




 Pentru cei ce vor să știe câte ceva și despre alte editoare CLI, citiți vă rog un material despre vim aici: http://blog.vnrxland.eu/2011/11/invata-vim-progresiv-pasul-i-ghid-de.html, plus celelalte 3 părți!

Niciun comentariu:

Trimiteți un comentariu

Back to top