Programmerings script med bash på linux

Indholdsfortegnelse

Selvom vi generelt bruger det til administrative eller filhåndteringsoperationer, udvider Linux -konsollen sin funktionalitet langt ud over dette formål, så vi kan programmere scripts efter vores behov.
Grundlæggende siger vi, at det er en fil, der indeholder kode skrevet i et bestemt programmeringssprog, som systemet bruger til en bestemt opgave. Det behøver ikke at have en ekstern input eller grafisk grænseflade, men det er nødvendigt at sende behandlede data.
For at begynde skal vi have en teksteditor og lyst til at programmere. De filer, vi gemmer med .sh -udvidelsen, kan udføres (eller fortolkes) af konsollen, så længe den første linje er følgende:
#! / bin / bash
Dette fortæller systemet at bruge konsollen til at køre filen. Derudover giver # -tegnet dig mulighed for at skrive kommentarer.
Vi vil prøve flere eksempler
Vi opretter en fil kaldet downloads.sh
 #! / bin / bash # lad os oprette et alias kaldet downloads med adressen på Downloads -biblioteket alias downloads = ’ / home / user / Downloads’

Gem det som downloads.sh
For at starte 'Bash -scriptet skal du give det udføre tilladelser. For at gøre dette skal du indtaste kommandoterminalen:
chmod u + x downloads.sh
Husk at køre denne kommando for hvert script, du opretter
Start 'scriptet' ved at køre i terminalen
./downloads.sh
Hvis det fungerede, skulle du placeres i Downloads -biblioteket
Brug variabler og parametre i scriptet
 #! / bin / bash # Brug af variabler # echo "Dit første argument er" $ 1 echo "Dit andet argument er" $ 2

Måden at køre scriptet på er f.eks
./miScript.sh hej 4

Resultatet skulle være
Dit første argument er hej
Dit andet argument er 4
Sådan gør du det muligt at indtaste variabler og parametre under udførelsen
 #! / bin / bash echo "Indtast dit navn, og tryk på ENTER" #Læs variabelnavnet læs navn echo "Dit navn er $ navn"

Et mere nyttigt eksempel på et script, der fortæller os, hvad der behandler en bestemt bruger, der er indtastet, udfører
 #! / bin / bash RES = s #svar på loop fortsætte, hvis mens [$ RES = s] ekko "Indtast brugernavn:" læs USU #brugernavn ps aux | grep $ USU echo "Vil du fortsætte?" læs RES udført

Hvis vi vil forhindre enhver bruger i at udføre scriptet i begyndelsen, kan vi sætte følgende kode, så det kun kan udføres af rodbrugeren
 #! / bin / bash hvis [[$ EUID -ne 0]]; ekko derefter "Dette script skal udføres af rodbrugeren" 1> & 2 exit 1 fi 
Hvis en anden bruger prøver at køre scriptet, fungerer det ikke, og terminalvinduet lukkes.
Vi kan også tillade nogle brugere at køre det for dem i begyndelsen, vi vil sætte følgende kode
 #! / bin / bash AUTHORIZED_USER = "tilladt bruger", hvis [$ USER! = $ AUTHORIZED_USER]; ekko derefter "Dette script skal udføres af brugeren $ AUTHORIZED_USER" 1> & 2 afslutte 1 fi

Vi opretter en bash -menu for at give forskellige muligheder enten til en bruger eller for at lette interaktion
 #! / bin / bash klar mens: ekko "Vælg en mulighed" ekko "1. Brugere logget ind?" echo "2. Ressourceforbrug" echo "3. Services kører?" ekko "4. Afslut" echo -n "Vælg en mulighed [1 - 4]" læs optionstilfælde $ option i 1) echo "De er forbundet:"; quien;; 2) ekko "Running htop"; htop ;; 3) lsof -n -i -P | grep '*;; 4) ekko "End"; afslut 1 ;; *) echo "$ opc er en ugyldig mulighed?"; ekko "Tryk på en tast for at fortsætte …"; læs foo;; Færdig
Kan du lide og hjælpe denne vejledning?Du kan belønne forfatteren ved at trykke på denne knap for at give ham et positivt punkt
wave wave wave wave wave