Ako koristite Linux, znate koliko je korisno naredba za rad s datotekama, instaliranje softvera i pokretanje programa. Ali to može biti još učinkovitije ako pokrenete više naredbi odjednom.
Kombinirajući dvije ili više naredbi na naredbenom retku je također poznat kao "naredbeni lanac". Pokazat ćemo vam različite načine na koje možete kombinirati naredbe na naredbenom retku.
Vremenski okvir (;) operater omogućuje izvršavanje više naredbi u nizu, bez obzira na to uspijeva li ikakva prethodna naredba. Na primjer, otvorite prozor terminala (Ctrl + Alt + T u Ubuntu i Linux Mint). Zatim upišite sljedeće tri naredbe na jedan red, odvojenih točkom-zarezom i pritisnite Enter. Ovo će vam dati popis trenutnog direktorija ( ls
), saznajte koji direktorij ste trenutno u ( pwd
) i prikazati svoje ime za prijavu ( tko sam ja
) sve odjednom.
ls; pwd; tko sam ja
Ne morate stavljati razmake između točaka i naredbi. Možete unijeti tri naredbe kao ls, zap; Tkosamja
, Međutim, prostori čine kombiniranu naredbu čitljivijom, što je osobito korisno ako stavljate kombiniranu naredbu u skriptu ljuske.
Ako želite da se druga naredba pokrene samo ako je prva naredba uspješna, razdvojite naredbe s logičkim AND operatorom, što je dvije ampersands ( &&
). Na primjer, želimo napraviti direktorij pod nazivom MyFolder, a zatim se prebaciti u taj direktorij, pod uvjetom da je uspješno stvoren. Dakle, upišemo sljedeće u naredbenu retku i pritisnite Enter.
mkdir MyFolder & & cd MyFolder
Mapa je uspješno stvorena pa je CD
naredba je izvršena i sad smo u novoj mapi.
PreporuÄŤujemo da koristite logiÄŤki AND operator umjesto vodostaju za poluotvorene dijelove veÄ ‡ inu vremena (;
). To osigurava da ne učinite ništa katastrofalno. Na primjer, ako pokrenete naredbu za prebacivanje u direktorij, a zatim prisiljavajte da se sve rekurzivno ukloni u taj direktorij ( cd / some_directory; rm-Rf *
), možete uništiti vaš sustav ako se promjena direktorija ne dogodi. Ne preporučujemo da pokrenete naredbu da bezuvjetno uklonite sve datoteke u direktoriju odjednom.
Ponekad želite izvršiti drugu naredbu samo ako prva naredba radi neuspjeti. Da bismo to učinili, koristimo logičku OR operatoru ili dvije vertikalne trake ( ||
). Na primjer, želimo provjeriti postoji li imenik MyFolder ( [-d ~ / MyFolder]
) i stvoriti ga ako ne ( mkdir ~ / MyFolder
). Dakle, upisujemo sljedeću naredbu i odmah pritisnite Enter.
[-d ~ / MyFolder] || mkdir ~ / MyFolder
Budite sigurni da postoji razmak nakon prvog nosača i prije drugog nosača ili prve naredbe koja provjerava postoji li direktorij neće raditi.
U našem primjeru, mapa MyFolder ne postoji, pa druga naredba stvara direktorij.
Također možete kombinirati više operatera na naredbenom retku. Na primjer, želimo najprije provjeriti postoji li datoteka ( [-f ~ / sample.txt]
). Ako se to dogodi, ispisujemo poruku na zaslonu tako govoreći: echo "Datoteka postoji."
). Ako ne, stvorili smo datoteku ( dodirnite ~ / sample.txt
). Dakle, upišemo sljedeće u naredbeni redak i pritisnite Enter.
[-f ~ / sample.txt] && echo "Datoteka postoji." || dodirnite ~ / sample.txt
U našem primjeru, datoteka nije postojala pa je stvorena.
Evo korisnog sažetka svakog od operatora koji se koristi za kombiniranje naredbi:
A; B
- Run A i B, bez obzira na uspjeh ili neuspjeh AA && B
- Run B samo ako je uspioA || B
- Pokreni B samo ako A nije uspioSve ove metode kombiniranja naredbi također se mogu koristiti u skriptama ljuske na Linuxu i Windowsima 10.
Također možete automatski ispraviti pravopis i pogreške pisanja kada koristite "cd" na naredbenoj liniji u Linuxu kako biste izbjegli drastične posljedice pri kombiniranju naredbi.