Programmeringsskript med bash på linux

Innholdsfortegnelse

Selv om vi vanligvis bruker det til administrative eller filbehandling, utvider Linux -konsollen funksjonaliteten langt utover det formålet, slik at vi kan programmere skript i henhold til våre behov.
I utgangspunktet sier vi at det er en fil som inneholder kode skrevet på et bestemt programmeringsspråk som systemet bruker til en bestemt oppgave. Den trenger ikke å ha en ekstern inngang eller et grafisk grensesnitt, men den trenger å sende ut behandlede data.
For å begynne må vi ha en tekstredigerer og et ønske om å programmere. Filene vi lagrer med utvidelsen .sh kan kjøres (eller tolkes) av konsollen, så lenge den første linjen er følgende:
#! / bin / bash
Dette forteller systemet å bruke konsollen til å kjøre filen. I tillegg lar # -tegnet deg skrive kommentarer.
Vi skal prøve flere eksempler
Vi lager en fil som heter downloads.sh
 #! / bin / bash # la oss lage et alias kalt nedlastinger med adressen til nedlastingskatalogen alias downloads = ’ / home / user / Downloads’

Lagre det som downloads.sh
For å starte 'Bash -skriptet, gi det kjøre tillatelser. For å gjøre dette, skriv inn kommandoterminalen:
chmod u + x nedlastings.sh
Husk å kjøre denne kommandoen for hvert skript du lager
Start 'scriptet' ved å kjøre i terminalen
./downloads.sh
Hvis det fungerte, bør du være plassert i nedlastingskatalogen
Bruk variabler og parametere i skriptet
 #! / bin / bash # Bruke variabler # echo "Det første argumentet ditt er" $ 1 echo "Det andre argumentet ditt er" $ 2

Måten å kjøre skriptet på er for eksempel
./miScript.sh hei 4

Resultatet burde være
Ditt første argument er hei
Ditt andre argument er 4
Hvordan gjøre det mulig å angi variabler og parametere under utførelsen
 #! / bin / bash echo "Skriv inn navnet ditt og trykk ENTER" #Les variabelnavnet lese navn echo "Ditt navn er $ name"

Et mer nyttig eksempel på et skript som vil fortelle oss hva som behandler en bestemt bruker som er angitt, utfører
 #! / bin / bash RES = s #response på loop fortsette hvis [$ RES = s] gjør ekko "Skriv inn brukernavn:" les USU #brukernavn ps aux | grep $ USU echo "Vil du fortsette?" les RES gjort

Hvis vi vil forhindre at noen bruker kjører skriptet i begynnelsen, kan vi sette følgende kode slik at det bare kan kjøres av rotbrukeren
 #! / bin / bash if [[$ EUID -ne 0]]; ekko deretter "Dette skriptet må kjøres av rotbrukeren" 1> & 2 avslutte 1 fi 
Hvis en annen bruker prøver å kjøre skriptet, fungerer det ikke, og terminalvinduet lukkes.
Vi kan også tillate noen brukere å kjøre det for dem i begynnelsen. Vi legger inn følgende kode
 #! / bin / bash AUTHORIZED_USER = "tillatt bruker" hvis [$ USER! = $ AUTHORIZED_USER]; ekko deretter "Dette skriptet må kjøres av brukeren $ AUTHORIZED_USER" 1> & 2 avslutte 1 fi

Vi vil lage en bash -meny for å gi forskjellige alternativer enten til en bruker eller for å lette interaksjonen
 #! / bin / bash klar mens: ekko "Velg et alternativ" ekko "1. Brukere logget inn?" echo "2. Ressursforbruk" echo "3. Tjenester som kjører?" ekko "4. Avslutt" echo -n "Velg et alternativ [1 - 4]" les alternativtilfelle $ alternativ i 1) echo "De er tilkoblet:"; quien;; 2) ekko "Running htop"; htop ;; 3) lsof -n -i -P | grep '*;; 4) ekko "End"; avkjørsel 1;; *) echo "$ opc er et ugyldig alternativ?"; ekko "Trykk på en tast for å fortsette …"; les foo;; gjort
Likte og hjalp du denne opplæringen?Du kan belønne forfatteren ved å trykke på denne knappen for å gi ham et positivt poeng
wave wave wave wave wave