Innehållsförteckning
Även om vi i allmänhet använder det för administrativa eller filhanteringsåtgärder, förlänger Linux -konsolen dess funktionalitet långt bortom det syftet, vilket gör att vi kan programmera skript enligt våra behov.I grund och botten säger vi att det är en fil som innehåller kod skriven i ett visst programmeringsspråk som systemet använder för en viss uppgif.webpt. Det behöver inte ha en extern ingång eller ett grafiskt gränssnitt, men det behöver mata ut bearbetade data.
För att börja måste vi ha en textredigerare och lust att programmera. Filerna som vi sparar med .sh -tillägget kan köras (eller tolkas) av konsolen, så länge den första raden är följande:
#! / bin / bash
Detta uppmanar systemet att använda konsolen för att köra filen. Dessutom tillåter # -tecknet att skriva kommentarer.
Vi ska prova flera exempel
Vi skapar en fil som heter downloads.sh
#! / bin / bash # låt oss skapa ett alias som kallas nedladdningar med adressen till nedladdningskatalogen alias downloads = ’ / home / user / Downloads’
Spara det som downloads.sh
För att starta 'Bash -skriptet, ge det att utföra behörigheter. För att göra detta, skriv in kommandoterminalen:
chmod u + x nedladdningar.shKom ihåg att köra detta kommando för varje skript du skapar
Starta "skriptet" genom att köra i terminalen
./downloads.shOm det fungerade bör du placeras i nedladdningskatalogen
Använd variabler och parametrar i skriptet
#! / bin / bash # Använda variabler # echo "Ditt första argument är" $ 1 echo "Ditt andra argument är" $ 2
Sättet att köra skriptet är till exempel
./miScript.sh hej 4
Resultatet borde vara
Ditt första argument är hej
Ditt andra argument är 4
Hur man gör det möjligt att ange variabler och parametrar under körningen
#! / bin / bash echo "Ange ditt namn och tryck på RETUR" #Läs variabelnamnet läs namn eko "Ditt namn är $ name"
Ett mer användbart exempel på ett skript som kommer att berätta för oss vilka processer som en viss användare som skrivs in utför
#! / bin / bash RES = s #svar på loop fortsätter om medan [$ RES = s] gör eko "Ange användarnamn:" läs USU #användarnamn ps aux | grep $ USU echo "Vill du fortsätta?" läs RES klar
Om vi vill hindra någon användare från att köra skriptet i början kan vi sätta följande kod så att det bara kan köras av rotanvändaren
#! / bin / bash om [[$ EUID -ne 0]]; eko sedan "Detta skript måste köras av rotanvändaren" 1> & 2 avsluta 1 fiOm någon annan användare försöker köra skriptet fungerar det inte och terminalfönstret stängs.
Vi kan också tillåta vissa användare att köra det för dem i början kommer vi att sätta följande kod
#! / bin / bash AUTHORIZED_USER = "tillåten användare" om [$ USER! = $ AUTHORIZED_USER]; eko sedan "Detta skript måste köras av användaren $ AUTHORIZED_USER" 1> & 2 avsluta 1 fi
Vi kommer att skapa en bash -meny för att ge olika alternativ antingen till en användare eller för att underlätta interaktion
#! / bin / bash rensa medan: echo "Välj ett alternativ" echo "1. Användare inloggade?" echo "2. Resursförbrukning" echo "3. Tjänster som körs?" echo "4. Avsluta" echo -n "Välj ett alternativ [1 - 4]" läs alternativfall $ option i 1) echo "De är anslutna:"; quien;; 2) eko "Running htop"; htop ;; 3) lsof -n -i -P | grep '*;; 4) eko "Slut"; utgång 1;; *) echo "$ opc är ett ogiltigt alternativ?"; echo "Tryck på en knapp för att fortsätta …"; läs foo;; GjortGillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng