Cum se trece de la Bash la Fish Shell pe Linux

În mod obișnuit, mulți utilizatori de Linux preferă să rămână la Bash în terminal, ceea ce poate limita experiența lor. Bash, fiind destul de simplu, nu oferă funcționalități moderne, gata de utilizare. Dacă îți dorești o experiență terminală superioară, poate fi o idee bună să te îndepărtezi de Bash și să încerci Fish Shell.

Instalarea Fish Shell

Înainte de a stabili Fish Shell ca terminal principal, va trebui să-l instalezi pe sistemul tău Linux. Din fericire, Fish este un shell popular, având pachete disponibile pentru majoritatea distribuțiilor Linux. Deschide un terminal și execută comanda corespunzătoare distribuției tale:

Ubuntu

sudo apt install fish

Debian

sudo apt-get install fish

Arch Linux

sudo pacman -S fish

Fedora

sudo dnf install fish

OpenSUSE

sudo zypper install fish

Alte Distribuții Linux

Fish a fost dezvoltat de ceva timp, ceea ce face ca instalarea lui pe majoritatea distribuțiilor Linux să fie simplă. Pentru a instala Fish, deschide un terminal și caută „fish” sau „fish shell” în managerul de pachete. Alternativ, poți verifica pagina oficială Github pentru a-l compila din codul sursă.

Trecerea de la Bash la Fish Shell

Utilizarea Fish ca shell implicit poate necesita o perioadă de adaptare, deoarece funcționează diferit față de Bash. Spre deosebire de alte alternative, cum ar fi Zsh, Ksh, etc., Fish nu se bazează pe sistemul Bash ca fundație. Datorită acestui design diferit, unele comenzi pot refuza să funcționeze din cauza sintaxei specifice Fish. Va trebui să ajustezi anumite obiceiuri atunci când utilizezi terminalul.

Din fericire, există un ghid detaliat care explică complexitățile Fish Shell și mediul său de lucru. Acesta prezintă sintaxa Fish, modul în care gestionează pipe-urile și multe alte aspecte utile. Dacă te gândești să faci această schimbare, consultă acest ghid pentru a te familiariza cu Fish.

Odată ce ai parcurs ghidul, poți schimba shell-ul implicit al utilizatorului tău din Bash în Fish Shell. În terminal, rulează comanda `chsh`. Atenție, nu executa comanda cu `sudo`, deoarece vei schimba shell-ul utilizatorului root, nu pe al tău.

chsh -s /usr/bin/fish

Comanda `chsh` alocă noul shell utilizatorului. Pentru a accesa Fish imediat, tastează `fish` în terminal. Alternativ, poți reporni computerul Linux pentru a finaliza schimbarea. După repornire, conectează-te din nou și deschide un terminal. Dacă totul a decurs corect, Fish va fi noul shell implicit, iar terminalul te va întâmpina cu Fish Shell în loc de Bash.

Configurarea Fish

Chiar dacă ai trecut la Fish Shell, mai ai nevoie să-l configurezi. Primul pas este să creezi un folder de configurare în terminal:

mkdir -p ~/.config/fish

Apoi, creează un fișier de configurare în folderul creat anterior:

touch ~/.config/fish/config.fish

Comanda `touch` creează un fișier de configurare gol. Acum poți adăuga setările personalizate. Pentru majoritatea utilizatorilor, o modificare comună este dezactivarea mesajului de întâmpinare. Adaugă această modificare la configurație rulând următoarea comandă:

echo 'set fish_greeting ""' >> ~/.config/fish/config.fish

Salvarea Configurației Fish

Configurarea Fish pe mai multe computere poate fi incomodă, deoarece va trebui să creezi o nouă configurație pentru fiecare sistem. O metodă mai rapidă este să salvezi fișierul de configurare și să-l restabilești pe celelalte computere. Pentru a crea o copie de rezervă, execută această comandă în terminal:

cp ~/.config/fish/config.fish ~/Documents/

Pentru a restabili configurația, mută fișierul pe noul computer, plasează-l în folderul Documente și rulează:

mkdir -p ~/.config/fish
cp ~/Documents/config.fish ~/.config/fish/config.fish

Personalizarea

În general, Fish este configurat și gata de utilizare. Cu toate acestea, dacă dorești să-l personalizezi mai mult, există o modalitate de a face acest lucru. Introdu comanda următoare în terminal:

fish_config

Această comandă va deschide automat o nouă filă în browser-ul tău web, afișând opțiunile de personalizare Fish.

În fereastra Fish_Config, poți aplica teme, configura variabile, defini funcții personalizate, vizualiza istoricul comenzilor, atribui abrevieri, aliasuri și multe altele!

Completarea Automată în Fish

Una dintre cele mai impresionante funcționalități ale Fish este completarea automată. Aceasta este mult superioară altor shell-uri, iar această singură caracteristică ar putea convinge chiar și pe cei mai înfocați fani Bash să încerce Fish. Avantajul major este că nu ai nevoie de cunoștințe avansate pentru a beneficia de ea, fiind utilă chiar și pentru începătorii în utilizarea terminalului.

Pentru a folosi completarea automată, începe să tastezi o comandă în terminal. Vei observa că Fish încearcă să ghicească ce vei scrie. Pe măsură ce adaugi mai multe caractere, predicția devine mai precisă. Poți completa automat o comandă apăsând tasta săgeată dreapta de pe tastatură. Comanda ta va fi completată instantaneu.