Hur man kör flera kommandon i Linux

How Run Multiple Commands Linux



Olika typer av kommandon behövs för att köra från terminalen i Linux. Ibland måste vi köra flera kommandon åt gången där kommandona kan bero på varandra eller inte. Att köra flera kommandon samtidigt kallas kommandokedja. Många typer av operatörer kan användas för kommandokedjor för olika ändamål. Hur du kan köra två eller flera kommandon med de vanligaste operatörerna visas i den här självstudien.

pipe (|) operatör används för att köra två eller flera relaterade kommandon åt gången. Inmatningen av nästa kommando är utdata från föregående kommando. Så, framgången för varje kommando beror på framgången med tidigare kommando utan första kommando. I följande kommando, det första kommandot, ls kommer att ta reda på listan över filer och mappar för den aktuella platsen och skicka utmatningen som ingång för det andra kommandot, toalett . Det kommer att skriva ut det totala antalet rader, ord och tecken baserat på inmatningsdata.







$ls -de | toalett Lyckligtvis



Semikolon (;) Operatör

Semikolon (;) -operatör är van vid att köra två eller flera orelaterade kommandon åt gången. Detta innebär att utsignalen från varje kommando inte är beroende av andra kommandon. I följande exempel kombineras tre typer av kommandon tillsammans och misslyckandet av varje kommando skapar ingen effekt på utmatningen av andra kommandon. Det första kommandot skriver ut innehållet i en fil, det andra kommandot skapar en katalog och det tredje kommandot ändrar den aktuella katalogen.



$kattmyfile.txt;mkdirnewdir;CDSkrivbord





Logisk OCH (&&) operatör

Kommandona som körs av Logical AND (&&) är relaterade till varandra som pipe (|) kommando. Så om det föregående kommandot inte kommer att köras framgångsrikt kommer nästa kommandon inte att fungera. I följande exempel kombineras två kommandon, mkdir och rmdir av && operatorer. Så, det mkdir -kommandot misslyckades med att utföra framgångsrikt då kommer rmdir -kommandot inte att köras. Enligt utdata från ls -kommandot finns redan katalogen myDir på den aktuella platsen. Så det första kommandot kommer inte att köras och för det andra kommandot kommer det inte att exekveras också.

$ls
$mkdirmyDir&& rmdirtemp
$ls



Logisk ELLER (||) operatör

Logisk ELLER (||) operatör är motsatsen till logisk OCH (&&) operatör. Nästa kommando kommer att köras om det föregående kommandot inte kan köras. Tre kattkommandon kombineras med OR (||) -operatorn i följande exempel. När du kommer att köra kommandot kommer det först och främst att försöka visa innehållet i cat.txt -filen. Om ingen sådan fil finns på den aktuella platsen försöker den utföra nästa kommando. Enligt utdata finns bird.txt -fil på den aktuella platsen och innehållet i filen visas.

$ cat cat.txt || katthund.txt || kattfågel.txt

Flera kommandon med flera operatörer

Du kan använda flera operatörer för att köra flera kommandon åt gången. I följande exempel kombineras tre kommandon med operatorerna OR (||) och AND (&&). Efter att ha kört kommandot, först och främst, kommer den att ändra den aktuella katalogen till newdir om katalogen finns. Om detta kommando misslyckas kommer det att skapa katalogen genom att köra det andra kommandot och skriva ut meddelandet, katalogen skapas. Enligt utdata finns inte newdir -katalogen på den aktuella platsen. Så felmeddelandet visas och katalogen skapas senare.

$CDnewdir|| mkdirnewdir&& kastade ut 'katalog skapas'

Kombinationsoperatör {}

Två eller flera kommandon kan kombineras med denna operatör och om körningen av det första kommandot misslyckas kommer det andra kommandot inte att köras. I följande exempel används OR, AND och kombinationsoperatorer tillsammans. De första kommandona kontrollerar att tempkatalogen finns på den aktuella platsen eller inte. Om det första kommandot misslyckas kommer det att skapa en temp -katalog och skriva ut ett meddelande. Det sista kommandot visar den aktuella kataloglistan.

$[ -dtemp] || { mkdirtemp;kastade uttemp -katalogen skapas nu .;} && ls

Företrädesoperatör ()

Du kan använda den här operatören för att gruppera kommandona vid körningstillfället. Här kommer varje grupp att arbeta som en enda uppgift. I följande exempel definieras två kommandogrupper och om den första gruppen inte körs kommer den andra gruppen att köras.

$(CDtemp&& ls-till) || (mkdirtemp&& ls)

Slutsats

Denna handledning förklarade de mest använda operatörerna för att köra flera kommandon i Linux. Men det finns många andra operatörer som finns i bash som används för att köra två eller flera kommandon tillsammans. Dessa är ampersand (&), omdirigering (, >>), logisk NOT (!), Kombination ({}) etc.