cd ~/uso-lab && git pull
.
Principalul atu al utilizării aplicațiilor în linie de comandă, și nu în mediul grafic, este viteza cu care rezolvăm anumite sarcini. Această viteză este dată de posibilitatea de a combina utilitare în linia de comandă pentru a automatiza procese manuale, repetitive. Întotdeauna ne dorim să fim mai rapizi și să automatizăm cât mai mult din sarcinile noastre, deoarece cu cât ne terminăm treaba mai repede, cu atât avem mai mult timp liber la dispoziție.
De regulă, cu cât petrecem mai mult timp cu mâna pe tastatură și mai puțin pe mouse, cu atât suntem mai rapizi. Aliniate la această idee, aplicațiile ne pun la dispoziție scurtături pe care suntem încurajați să le folosim pentru a ne utiliza timpul mai eficient.
Funcția de tab completion este probabil una dintre cele mai utile funcții expuse de către terminal. Prin simpla apăsare a tastei Tab
în timp ce scriem numele unei comenzi, al unei opțiuni a unei comenzi sau calea către un director sau fișier, terminalul va completa în mod automat textul. În cazul în care există mai multe opțiuni pentru auto-complete, prin dubla apăsare a tastei Tab
ne va sugera opțiunile de auto-complete.
În imaginea de mai jos putem observa că pentru comanda cd D
funcția de Tab
completion a găsit mai multe opțiuni valide pentru auto-complete. În astfel de scenarii, cu mai multe opțiuni valide, apăsarea tastei Tab
o singură dată nu produce niciun rezultat; trebuie să apăsăm tasta Tab
de două ori consecutiv pentru a genera afișarea opțiunilor de auto-complete.
student@uso:~$ cd D Desktop/ Documents/ Downloads/ student@uso:~$ cd D
Funcția de auto-complete este extrem de utilă și îmbunătățește semnificativ viteza cu care realizăm acțiuni în terminal.
Funcția este extrem de utilă atunci când lucrăm cu nume de fișiere, directoare și căi din sistem. În loc să scriem manual o cale către un nume foarte lung, lăsăm tasta Tab
să facă asta pentru noi.
Atunci când avem o eroare în comandă (am scris greșit o anumită parte din numele comenzii sau al fișierului, fișierul nu există, etc.), tasta Tab
nu produce nici un rezultat. Acesta este un alt motiv pentru care să folosim tasta Tab
.
Folosiți funcția de Tab
completion cât mai des cu putință1).
Shellul implementează funcția de a reține istoricul comenzilor pe care le-am executat. Pentru a vedea istoricul curent putem rula comanda history
. Vom obține un rezultat asemănător cu cel de mai jos:
student@uso:~$ history [...] 21 ls 22 cd sorting/ 23 ls -l 24 ls 25 cd 26 ls ~/Desktop ~/Documents ~/Downloads 27 ls ~/Desktop 28 ls Desktop/todos.txt 29 cp Desktop/todos.txt cp 30 ls 31 rm cp [...]
Ciclăm prin comenzile date anterior folosind combinația de taste Arrow Up
sau Ctrl+p
, respectiv Arrow Down
sau Ctrl+n
.
Exercițiu: Ciclați prin istoricul de comenzi folosind combinația de taste Ctrl+p
, respectiv Ctrl+n
.
Terminalul ne pune la dispoziție un mod mai inteligent de a căuta în istoricul comenzilor prin combinația de taste Ctrl+r
, ordinea căutării fiind de la cea mai recentă comandă la cea mai veche. Funcția este cunoscută sub numele de history search.
Pentru a porni căutarea, apăsați combinația de taste Ctrl+r
și începeți să scrieți o parte din textul comenzii pe care o căutați, de exemplu cd
.
(reverse-i-search)`cd': cd workspace/hello
De aici, avem următoarele opțiuni:
cd
, folosind combinația de taste Ctrl+r
Ctrl+o
Ctrl+g
Căutarea este incrementală. Adică se rafinează pe măsură ce tastăm un caracter. Orice caracter apăsat rafinează căutarea.
Textul căutat se poate afla oriunde în interiorul comenzii; nu trebuie să fie primele litere din comandă. Pentru exemplul de mai sus, căutarea folosind textul work
ar fi produs același rezultat
(reverse-i-search)`work': cd workspace/hello
clear
. O alternativă mai rapidă este să folosim combinația de taste Ctrl+l
. Aceasta va produce același rezultat (va curăța ecranul) și are avantajul că poate fi folosită în timp ce scriem deja o comandă.