Så här använder du BASH för Loop
Ett av de mest grundläggande tricksna när man skriver bash-skript innebär att man gör en slinga så att du kan få en viss uppgift att köras automatiskt flera gånger över. Så småningom kommer slingan att nå ett förutbestämt provtillstånd och upphör plötsligt att utföra. Slingor som dessa kommer att fungera perfekt i bash på Linux och MacOS samt bash-skalet i Windows 10 och även de olika skalen i FreeBSD. Naturligtvis kan du skriva vilket kommando du helst föredrar i en slinga och behålla vilken process som helst som helst som du vill. Medan vi skriver några extremt enkla slingor kan du använda dessa färdigheter för att författa vilka typer av skript du vill ha.
Det finns många sätt att börja skriva ett skript, men för denna diskussion antar vi att du har öppnat en kommandotolk, antingen genom att söka efter terminal på Dash, genom att klicka på den i KDE, MATE, LX eller Whisker menyerna eller genom att hålla ner Ctrl, Alt och T samtidigt. Medan vi diskuterar vi / vim och nano som redaktörer är frågan om vilken redaktör som ska användas ganska personlig och du kan arbeta med vad du känner dig bekväm med.
Metod 1: Fram till Loop
Kanske är den mest grundläggande slingan i bash den fram till slingan. Det kommer att fortsätta exekvera kommandon tills testet du ställer in blir sant. Vi antar att du har använt antingen nano eller vi för att öppna en obefintlig fil som heter until.sh och är redo att infoga ny text i den. Vi gör bara något som räknas till 20 i din terminal för att hålla det enkelt först.
Börja med att skriva in följande:
#! / Bin / bash
n = 0
tills [$ n -gt 20]
do
echo $ n
((N ++))
Gjort
Om du använder nano, spara sedan den genom att hålla ned Ctrl och tryck sedan O och äntligen X för att avsluta. Användare av vi kommer att vilja trycka och skriva sedan: wq för att spara och avsluta.
Nästa typ chmod + x tillsLoop vid prompten för att göra det körbart och skriv sedan ./untilLoop för att köra det. När det har körts, fortsätter slingan att skriva ut nya nummer ut på din terminal tills n-variabeln blir 20.
Förresten berättar den första raden om din miljö, som måste laddas upp när man arbetar med dessa skript. Vissa programmerare rekommenderar att du bara använder #! / Bin / sh för att säkerställa att ditt skript följer vissa POSIX-standarder, men dessa enkla skript borde inte ha några problem att köra på de flesta moderna system.
Metod 2: The Loop
A for loop tar en titt på varje objekt i en given lista och utför sedan en given uppsättning kommandon på den listan. Vi ska göra en som skriver ut några operativsystem namn, men kom ihåg igen att du kan göra något med detta om du vill.
Skriv antingen nano forLoop eller vi forLoop vid kommandotolken och börja ange det här följande skriptet. Användare av vi måste ange infogningsläge innan de gör det.
#! / Bin / bash
unices = 'GNU / Linux FreeBSD OpenBSD NetBSD Solaris OpenIndiana Darwin HP-UX Minix'
för unix i $ unices
do
echo $ unix
Gjort
PRO TIPS: Om problemet är med din dator eller en bärbar dator, bör du försöka använda Reimage Plus-programvaran som kan skanna förvaret och ersätta korrupta och saknade filer. Detta fungerar i de flesta fall där problemet uppstått på grund av systemkorruption. Du kan ladda ner Reimage Plus genom att klicka här
Spara filen igen med hjälp av Ctrl + O och sedan Ctrl + X-metoden i nano eller Esc sedan: wq-metoden i vi innan du skickar kommandot chmod + x forLoop för att göra det körbart. När du har kör det genom att skriva ./forLoop vid prompten. För-slingan tvingar ekokommandot att arbeta på var och en av objekten i enhetens variabel i sin tur. Du kan, en gång till, ersätta den listan med något argument och ersätta echo med något kommando för att automatisera långa processer.
Metod 3: Samtidigt Loop
Börja redigera en tredje fil som heter whileLoop med nano, vi eller vilken annan redaktör du vill använda. Om du föredrar att använda en grafisk textredigerare kan du faktiskt också göra det med något av dessa projekt så länge du är säker på att du lägger filen i samma katalog som du arbetar från inuti kommandotolken .
Inne i den här filen vill du lägga till raderna:
#! / Bin / bash
n = 0
medan [$ n-20]
do
echo $ n
((N ++))
Gjort
Spara filen på samma sätt som du sparade de andra och avsluta sedan din textredigerare. När du har gått ut skickar du kommandot chmod + x whileLoop för att låta dig utföra det och sedan köra ./whileLoop för att köra det. Du kommer att se samma resultat som kom ut ur skriptet untilLoop från den första metoden eftersom det räknas från 0 till 20 i mer än sannolikt en delad sekund.
Detta är en utmärkt demonstration av det faktum att det finns mer än ett sätt att göra saker när du arbetar med loopar på detta sätt. Medan det inte finns tekniskt någon felaktig väg att göra så kommer du förmodligen att stöta på skriptförfattare som hävdar att du borde skriva dina skript närmare hur C-programmeringsspråket gör saker eller alternativt, andra kan föreslå att du inte ska göra det här. Ärligt talat finns det förmodligen många korrekta sätt att lösa ett problem.
Ta gärna bort dina skript när du är färdig att träna med dem.
PRO TIPS: Om problemet är med din dator eller en bärbar dator, bör du försöka använda Reimage Plus-programvaran som kan skanna förvaret och ersätta korrupta och saknade filer. Detta fungerar i de flesta fall där problemet uppstått på grund av systemkorruption. Du kan ladda ner Reimage Plus genom att klicka här