Script di programmazione con bash su Linux

Sommario

Sebbene generalmente lo usiamo per operazioni amministrative o di gestione dei file, la console Linux estende le sue funzionalità ben oltre questo scopo, consentendoci di programmare script in base alle nostre esigenze.
Fondamentalmente diciamo che è un file che contiene codice scritto in un determinato linguaggio di programmazione che il sistema utilizza per un determinato compito. Non ha bisogno di avere un input esterno o un'interfaccia grafica, ma ha bisogno di produrre dati elaborati.
Per iniziare dobbiamo avere un editor di testo e voglia di programmare. I file che salviamo con estensione .sh possono essere eseguiti (o interpretati) dalla console, purché la prima riga sia la seguente:
#!/bin/bash
Questo dice al sistema di usare la console per eseguire il file. Inoltre, il carattere # consente di scrivere commenti.
Proveremo diversi esempi
Creiamo un file chiamato downloads.sh
 #! / bin / bash # creiamo un alias chiamato download con l'indirizzo della directory Download alias download = '/ home / utente / Downloads'

Salvalo come downloads.sh
Per avviare lo script 'Bash, concedigli i permessi di esecuzione. Per fare ciò, digita nel terminale di comando:
chmod u + x downloads.sh
Ricorda di eseguire questo comando per ogni script che crei
Avvia lo "script" eseguendo nel terminale
./downloads.sh
Se ha funzionato, dovresti essere posizionato nella directory Download
Usa variabili e parametri nello script
 #! / bin / bash # Utilizzo delle variabili # echo "Il tuo primo argomento è" $ 1 echo "Il tuo secondo argomento è" $ 2

Il modo per eseguire lo script sarà ad esempio
./miScript.sh ciao 4

Il risultato dovrebbe essere
Il tuo primo argomento è ciao
Il tuo secondo argomento è 4
Come rendere possibile l'inserimento di variabili e parametri durante l'esecuzione
 #! / bin / bash echo "Inserisci il tuo nome e premi INVIO" #Leggi il nome della variabile read name echo "Il tuo nome è $ nome"

Un esempio più utile di uno script che ci dirà quali processi esegue un determinato utente inserito
 #! / bin / bash RES = s #response to loop continue if while [$ RES = s] do echo "Enter username:" read USU #username ps aux | grep $ USU echo "Vuoi continuare?" leggi RES fatto

Se vogliamo impedire a qualsiasi utente di eseguire lo script all'inizio possiamo inserire il seguente codice in modo che possa essere eseguito solo dall'utente root
 #! / bin / bash if [[$ EUID -ne 0]]; then echo "Questo script deve essere eseguito dall'utente root" 1> & 2 exit 1 fi 
Se un altro utente tenta di eseguire lo script, non funzionerà e la finestra del terminale si chiuderà.
Possiamo anche consentire ad alcuni utenti di eseguirlo per loro all'inizio inseriremo il seguente codice
 #! / bin / bash AUTHORIZED_USER = "utente consentito" if [$ USER! = $ AUTHORIZED_USER]; then echo "Questo script deve essere eseguito dall'utente $ AUTHORIZED_USER" 1> & 2 exit 1 fi

Creeremo un menu bash per dare diverse opzioni a un utente o per facilitare l'interazione
 #! / bin / bash clear while: do echo "Scegli un'opzione" echo "1. Utenti che hanno effettuato l'accesso?" echo "2. Consumo di risorse" echo "3. Servizi in esecuzione?" echo "4. Esci" echo -n "Seleziona un'opzione [1 - 4]" leggi opzione case $ opzione in 1) echo "Sono connessi:"; quien;; 2) echo "Htop in esecuzione"; htop;; 3) lsof -n -i -P | grep '*;; 4) echo "Fine"; uscita 1 ;; *) echo "$ opc è un'opzione non valida?"; echo "Premi un tasto per continuare…"; leggi pippo;; fatto
Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave