Cuprins
Documentaţie > Programator > bash
< Documentatie pentru programatori
bash - Bourne Again SHell
Informații exhaustive se găsesc în manual
Editarea comenzilor (command line editing)
Avantajul folosirii unui interpretor de comenzi (shell text) este acela al automatizării și execuției rapide de sarcini/acțiuni. Bash pune la dispoziția utilizatorului o serie de combinații de taste foarte utile pentru editarea și execuția rapidă a diverselor comenzi shell.
Editarea comenzilor Bash nu este o facilitate integrată. Se realizează prin intermediul bibliotecii Readline. Readline folosește implicit combinații de taste derivate din Emacs. Se poate configura pentru a folosi combinații de taste derivate din vi, dar editarea este ceva mai dificilă.
Mai jos sunt prezentate combinațiile de taste de editare, grupate pe funcționalitate.
Parcurgere
| Comandă | Echivalent | Efectul comenzii |
| Ctrl+a | Home | Poziționare la începutul liniei |
| Ctrl+e | End | Poziționare la sfârșitul liniei |
| Ctrl+f | Right Arrow | Avans un caracter |
| Ctrl+b | Left Arrow | Înapoi un caracter |
| Alt+f | Ctrl+Righ Arrow | Avans un cuvânt |
| Alt+b | Ctrl+Left Arrow | Înapoi un cuvânt |
| Ctrl+l | Ștergerea ecranului (clear screen) |
Ștergere
| Comandă | Echivalent | Efectul comenzii |
| Ctrl+d | Delete | Ștergere caracter de sub cursor; logout (dacă linia este goală) |
| Backspace | Ștergere caracter de dinaintea cursorului | |
| Alt+d | Ștergere de la poziția curentă până la sfârșitul cuvântului | |
| Alt+Backspace | Ctrl+w | Ștergere de la poziția curentă pâna la începutul cuvântului |
| Ctrl+k | Șterge de la poziția curentă până la sfârșitul liniei | |
| Ctrl+u | Șterge de la poziția curentă până la începutul liniei | |
| Ctrl+c | Anularea comenzii curente; se poate introduce o comandă nouă | |
| Ctrl+y | Copiază ultimul buffer șters (RazvanD: personal, nu prea folosesc comanda) | |
| Alt+y | Rotește inelul de buffere șterse (RazvanD: nici asta) |
Observații
Unele terminale (spre exemplu Gnome Terminal au unele scurtături de acces la meniul grafic identice cu cele ale Readline și le suprascriu. Pentru editarea eficientă a comenzilor, se recomandă dezactivarea scurtăturilor de acces la meniul grafic. În Gnome Terminal, acest lucru se realizează prin activarea opțiunii File->Keyboard Shordcuts->Disable all menu acess key.
Personal (RazvanD), în Gnome Terminal eu folosesc doar combinațiile Shift+Ctrl+N sau Shift+Ctrl+T pentru a deschide un nou terminal/tab si Alt+1,2,3 ... pentru a naviga între terminale. Nu am nevoie de scurtăturile de acces la meniul grafic; când este nevoie folosesc mouse-ul.
De ce sunt utile scurtăturile de editare a comenzilor?
TODO: idei mai jos:
- eficiență
- nu se deplasează degetele pe tastele sageata
- exemple negative: nu se foloseste ctrl+c, se apasa pe sageti pentru deplasare sau pentru a ajunge la inceputul comenzii, se sterge prin apasarea continua a caracterului Backslash
Alte informații
Mai multe informații se găsesc în manual.
