Slik kjører du flere kommandoer i Linux

How Run Multiple Commands Linux



Ulike typer kommandoer er nødvendig for å kjøre fra terminalen i Linux. Noen ganger må vi kjøre flere kommandoer om gangen hvor kommandoene kan være avhengige av hverandre eller ikke. Å kjøre flere kommandoer samtidig kalles kommandokjetting. Mange typer operatører kan brukes til kommandokjetting for forskjellige formål. Hvordan du kan kjøre to eller flere kommandoer ved å bruke de mest brukte operatorene, er vist i denne opplæringen.

pipe (|) operatør brukes til å kjøre to eller flere relaterte kommandoer om gangen. Inngangen til den neste kommandoen vil være utgangen fra den forrige kommandoen. Så suksessen til hver kommando avhenger av suksessen til tidligere kommando uten første kommando. I den følgende kommandoen, den første kommandoen, ls vil finne ut listen over filer og mapper for gjeldende plassering og sende utdataene som input for den andre kommandoen, toalett . Det vil skrive ut det totale antallet linjer, ord og tegn basert på inndataene.







$ls -de | toalett heldigvis



Semikolon (;) Operatør

Semikolon (;) -operatør er vant til å kjøre to eller flere ikke -relaterte kommandoer om gangen. Dette betyr at utgangen til hver kommando ikke er avhengig av andre kommandoer. I det følgende eksemplet kombineres tre typer kommandoer, og feilen i hver kommando vil ikke skape effekt på utdataene til andre kommandoer. Den første kommandoen vil skrive ut innholdet i en fil, den andre kommandoen vil lage en katalog og den tredje kommandoen vil endre den nåværende katalogen.



$kattmyfile.txt;mkdirnewdir;CDSkrivebord





Logisk AND (&&) operatør

Kommandoene som kjøres av Logical AND (&&) er relatert til hverandre som pipe (|) kommando. Så hvis den forrige kommandoen ikke vil bli utført vellykket, vil de neste kommandoene ikke fungere. I følgende eksempel to kommandoer, mkdir og rmdir kombinert av && operatører. Så, mkdir -kommandoen mislyktes i å utføre vellykket, og rmdir -kommandoen vil ikke bli utført. I henhold til utdataene fra ls -kommandoen, eksisterer myDir -katalogen allerede på gjeldende plassering. Så den første kommandoen vil ikke bli utført, og for den andre kommandoen vil den heller ikke bli utført.

$ls
$mkdirmyDir&& rmdirtemp
$ls



Logisk ELLER (||) operatør

Logisk ELLER (||) operatør er det motsatte av den logiske OG (&&) operatøren. Den neste kommandoen vil utføres hvis den forrige kommandoen ikke utføres. Tre kattkommandoer er kombinert med OR (||) operator i det følgende eksemplet. Når du vil kjøre kommandoen, vil den først og fremst prøve å vise innholdet i cat.txt -filen. Hvis ingen slik fil finnes på den nåværende plasseringen, prøver den å utføre den neste kommandoen. I henhold til utdata finnes bird.txt -filen på gjeldende plassering, og innholdet i denne filen vises.

$ cat cat.txt || katthund.txt || kattfugl.txt

Flere kommandoer med flere operatører

Du kan bruke flere operatører til å kjøre flere kommandoer om gangen. I det følgende eksemplet kombineres tre kommandoer med OR (||) og AND (&&) operatører. Etter å ha kjørt kommandoen, vil den først og fremst endre den nåværende katalogen til newdir hvis katalogen eksisterer. Hvis denne kommandoen mislykkes, vil den opprette katalogen ved å utføre den andre kommandoen og skrive ut meldingen, katalogen blir opprettet. I henhold til utdata eksisterer ikke newdir -katalogen på den nåværende plasseringen. Så feilmeldingen vises og katalogen opprettes senere.

$CDnewdir|| mkdirnewdir&& kastet ut 'katalog er opprettet'

Kombinasjonsoperatør {}

To eller flere kommandoer kan kombineres ved hjelp av denne operatøren, og hvis utførelsen av den første kommandoen mislykkes, vil den andre kommandoen ikke bli utført. I det følgende eksemplet brukes OR, AND og kombinasjonsoperatorer sammen. De første kommandoene vil kontrollere at temp -katalogen finnes på gjeldende plassering eller ikke. Hvis den første kommandoen mislykkes, vil den opprette en midlertidig katalog og skrive ut en melding. Den siste kommandoen viser gjeldende katalogliste.

$[ -dtemp] || { mkdirtemp;kastet utmidlertidig katalog er opprettet nå .;} && ls

Prioritetsoperatør ()

Du kan bruke denne operatøren til å gruppere kommandoene på tidspunktet for utførelsen. Her vil hver gruppe jobbe som en enkelt oppgave. I det følgende eksemplet er to kommandogrupper definert, og hvis den første gruppen ikke kan utføres, vil den andre gruppen utføres.

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

Konklusjon

Denne opplæringen forklarte de mest brukte operatørene for å kjøre flere kommandoer i Linux. Men det er mange andre operatører som eksisterer i bash som brukes til å kjøre to eller flere kommandoer sammen. Disse er ampersand (&), omdirigering (, >>), logisk IKKE (!), Kombinasjon ({}) etc.