Pagina principala » HOWTO » Cum se execută simultan două sau mai multe comenzi terminale în Linux

    Cum se execută simultan două sau mai multe comenzi terminale în Linux

    Dacă utilizați Linux, știți cât de util este linia de comandă pentru a lucra cu fișiere, a instala software-ul și a lansa programe. Dar poate fi chiar mai eficient dacă executați mai multe comenzi simultan.

    Combinarea a două sau mai multe comenzi pe linia de comandă este, de asemenea, cunoscută sub denumirea de "lanț de comandă". Vă vom arăta diferite moduri în care puteți combina comenzile pe linia de comandă.

    Opțiunea 1: Operatorul Semicolon (;)

    Operatorul punct și virgulă (;) vă permite să executați mai multe comenzi succesiv, indiferent dacă fiecare comandă anterioară reușește. De exemplu, deschideți o fereastră Terminal (Ctrl + Alt + T în Ubuntu și Linux Mint). Apoi, tastați următoarele trei comenzi pe o singură linie, separate prin punct și virgulă, și apăsați pe Enter. Aceasta vă va oferi o listă a directorului curent ( ls ), aflați directorul în care vă aflați în prezent ( PWD ) și afișați numele de conectare ( cine sunt ) dintr-o dată.

    ls; pwd; cine sunt

    Nu trebuie să introduceți spații între punct și virgulă și comenzi. Puteți introduce cele trei comenzi ca ls; pwd; whoami . Cu toate acestea, spațiile fac comanda combinată mai ușor de citit, ceea ce este util mai ales dacă introduceți o comandă combinată într-un script shell.

    A doua opțiune: Operatorul logic ȘI (&&)

    Dacă doriți ca cea de-a doua comandă să ruleze numai dacă prima comandă are succes, separați comenzile cu operatorul logical AND, care este de două ampersande ( && ). De exemplu, dorim să facem un director numit MyFolder și apoi să îl schimbăm în acel director - cu condiția să fie creat cu succes. Deci, introducem următoarele în linia de comandă și apăsăm pe Enter.

    mkdir MyFolder && cd MyFolder

    Dosarul a fost creat cu succes, astfel încât CD comanda a fost executată și suntem acum în noul dosar.

    Vă recomandăm să utilizați operatorul logic AND mai degrabă decât operatorul punctului vestic de cele mai multe ori (;). Acest lucru vă asigură că nu faceți nimic dezastruos. De exemplu, dacă rulați o comandă pentru a trece la un director și apoi forța elimina totul în acel director recursiv ( cd / some_directory; rm -Rf * ), s-ar putea să vă distrugeți sistemul dacă schimbarea directorului nu sa întâmplat. Nu că vă recomandăm să executați o comandă pentru a elimina necondiționat toate fișierele dintr-un director simultan.

    A treia opțiune: Operatorul logic OR (||)

    Uneori este posibil să doriți să executați oa doua comandă numai dacă o primă comandă are nu a reusi. Pentru aceasta, utilizăm operatorul logic OR sau două bare verticale ( || ). De exemplu, vrem să verificăm dacă există directorul MyFolder ( [-d ~ / MyFolder] ) și să o creeze dacă nu ( mkdir ~ / MyFolder ). Deci, tastăm următoarea comandă la prompt și apăsăm Enter.

    [-d ~ / MyFolder] || mkdir ~ / MyFolder

    Asigurați-vă că există un spațiu după primul bracket și înainte de al doilea bracket sau prima comandă care verifică dacă există directorul nu va funcționa.

    În exemplul nostru, directorul MyFolder nu există, astfel încât a doua comandă creează directorul.

    Combinarea mai multor operatori

    Puteți combina mai mulți operatori și pe linia de comandă. De exemplu, vrem să verificăm mai întâi dacă există un fișier ( [-f ~ / sample.txt] ). În caz contrar, vom imprima un mesaj pe ecran spunând astfel ( echo "Fișier există." ). Dacă nu, vom crea fișierul ( atinge ~ / sample.txt ). Deci, tastăm următoarele la promptul de comandă și apăsăm pe Enter.

    [-f ~ / sample.txt] && echo "Fișierul există." || atinge ~ / sample.txt

    În exemplul nostru, fișierul nu există, așa că a fost creat.

    Iată un rezumat util al fiecăruia dintre operatorii utilizați pentru combinarea comenzilor:

    •  A ; B  - Rulați A și apoi B, indiferent de succesul sau eșecul lui A
    •  A && B  - Rulați B numai dacă A a reușit
    •  A || B  - Rulați B numai dacă A nu a reușit

    Toate aceste metode de combinare a comenzilor pot fi, de asemenea, folosite în script-uri de shell atât pe Linux cât și pe Windows 10.

    De asemenea, puteți corecta corect ortografia și greșelile atunci când utilizați "cd" pe linia de comandă din Linux pentru a evita consecințele drastice atunci când combinați comenzi.