Ricerca nel sito web

Comprendere la shell Linux e i suggerimenti di base sul linguaggio di scripting della shell - Parte I


L'immagine parla più delle parole e l'immagine qui sotto dice tutto sul funzionamento di Linux.

Leggi anche

  1. 5 script di shell per imparare a programmare la shell – Parte II
  2. Navigando nel mondo di Linux BASH Scripting – Parte III

Comprendere la shell di Linux

  1. Shell: un interprete della riga di comando che collega un utente al sistema operativo e consente di eseguire i comandi o creare script di testo.
  2. Processo: qualsiasi attività eseguita da un utente nel sistema è chiamata processo. Un processo è poco più complesso di un semplice compito.
  3. File: risiede sul disco rigido (hdd) e contiene dati di proprietà di un utente.
  4. X-windows ovvero windows: una modalità di Linux in cui lo schermo (monitor) può essere diviso in piccole "parti" chiamate windows<, che consentono a un utente di fare più cose contemporaneamente e/o passare facilmente da un'attività all'altra e visualizzare la grafica in modo gradevole.
  5. Terminale di testo: un monitor che ha solo la capacità di visualizzare testo, nessuna grafica o un display grafico molto semplice.
  6. Sessione: tempo che intercorre tra l'accesso on e la disconnessione dal sistema.

Tipi di shell su una distribuzione Linux standard

Bourne shell: la Bourne shell era una delle principali shell utilizzate nelle prime versioni e divenne uno standard de facto. È stato scritto da Stephen Bourne presso Bell Labs. Ogni sistema simile a Unix ha almeno una shell compatibile con la shell Bourne. Il nome del programma Bourne Shell è "sh" e in genere si trova nella gerarchia del file system in /bin/sh.

C shell: la C shell è stata sviluppata da Bill Joy per la Berkeley Software Distribution. La sua sintassi è modellata sul linguaggio di programmazione C. Viene utilizzato principalmente per l'utilizzo del terminale interattivo, ma meno frequentemente per lo scripting e il controllo del sistema operativo. La shell C ha molti comandi interattivi.

Inizio del divertimento! (Conchiglia Linux)

Esistono migliaia di comandi per gli utenti della riga di comando, che ne dici di ricordarli tutti? Hmm! Semplicemente non puoi. Il vero potere del computer è facilitare il tuo lavoro, devi automatizzare il processo e quindi hai bisogno di script.

Gli script sono raccolte di comandi, archiviati in un file. La shell può leggere questo file e agire sui comandi come se fossero digitati sulla tastiera. La shell fornisce inoltre una serie di utili funzionalità di programmazione per rendere gli script davvero potenti.

Nozioni di base sulla programmazione Shell

  1. Per ottenere una shell Linux, è necessario avviare un terminale.
  2. Per vedere quale shell hai, esegui: echo $SHELL.
  3. In Linux, il simbolo del dollaro ($) rappresenta una variabile di shell.
  4. Il comando "echo" restituisce semplicemente qualunque cosa digiti.
  5. L'istruzione pipeline (|) viene in soccorso quando si concatenano più comandi.
  6. I comandi di Linux hanno la loro sintassi, Linux non ti perdonerà qualunque sia l'errore. Se sbagli un comando, non verrai bocciato né danneggerai nulla, ma non funzionerà.
  7. #!/bin/sh – Si chiama shebang. È scritto all'inizio di uno script di shell e passa l'istruzione al programma /bin/sh.

Informazioni sullo script di shell

Lo script di shell è solo un semplice file di testo con estensione ".sh", con autorizzazione eseguibile.

Processo di scrittura ed esecuzione di uno script

  1. Terminale aperto.
  2. Passa al punto in cui desideri creare lo script utilizzando il comando "cd".
  3. Cd (invio) [Questo porterà il messaggio nella tua directory home].
  4. tocca ciao.sh (qui abbiamo chiamato lo script come ciao, ricorda che l'estensione ".sh" è obbligatoria).
  5. vi ciao.sh (nano ciao.sh) [Puoi usare il tuo editor preferito per modificare lo script].
  6. chmod 744 hello.sh (rendendo eseguibile lo script).
  7. sh ciao.sh o ./ciao.sh (eseguendo lo script)
Scrivere la tua prima sceneggiatura
#!/bin/bash
My first script

echo "Hello World!"

Salvare le righe precedenti su un file di testo, renderlo eseguibile ed eseguirlo, come descritto sopra.

Uscita del campione

Hello World!

Nel codice sopra.

#!/bin/bash (is the shebang.)
My first script (is comment, anything following '#' is a comment)
echo “Hello World!” (is the main part of this script)
Scrivere la tua seconda sceneggiatura

OK, è ora di passare allo script successivo. Questo script ti dirà il tuo "nome utente" ed elencherà i processi in esecuzione.

#! /bin/bash
echo "Hello $USER"
echo "Hey i am" $USER "and will be telling you about the current processes"
echo "Running processes List"
ps

Crea un file con i codici sopra, salvalo come vuoi, ma con estensione ".sh", rendilo eseguibile ed eseguilo dal tuo terminale.

Uscita del campione

Hello tecmint
Hey i am tecmint and will be telling you about the current processes
Running processes List
  PID TTY          TIME CMD
 1111 pts/0    00:00:00 bash
 1287 pts/0    00:00:00 sh
 1288 pts/0    00:00:00 ps

È stato bello? Scrivere uno script è semplice come avere un'idea e scrivere comandi in pipeline. Ci sono anche alcune restrizioni. Gli script di shell sono eccellenti per operazioni concise sul filesystem e per creare script della combinazione di funzionalità esistenti nei filtri e negli strumenti da riga di comando tramite pipe.

Quando le tue esigenze diventano maggiori, sia in termini di funzionalità, robustezza, prestazioni, efficienza ecc., allora puoi passare a un linguaggio più completo.

Se conosci già il linguaggio di programmazione C/Perl/Python o qualsiasi altro linguaggio di programmazione, imparare il linguaggio di scripting non sarà molto difficile.

Scrivere il tuo terzo copione

Passando a, scrivi il nostro terzo e ultimo script per questo articolo. Questo script funge da script interattivo. Perché non esegui tu stesso questo script semplice ma interattivo e ci dici come ti senti.

#! /bin/bash
echo "Hey what's Your First Name?";
read a;
echo "welcome Mr./Mrs. $a, would you like to tell us, Your Last Name";
read b;
echo "Thanks Mr./Mrs. $a $b for telling us your name";
echo "*******************"
echo "Mr./Mrs. $b, it's time to say you good bye"

Uscita del campione

Hey what's Your First Name?
Avishek
welcome Mr./Mrs. Avishek, would you like to tell us, Your Last Name
Kumar
Thanks Mr./Mrs. Avishek Kumar for telling us your name
******************************************************
Mr./Mrs. Kumar, it's time to say you good bye

Ebbene, questa non è la fine. Abbiamo provato a darti un assaggio di scripting. Nel nostro prossimo articolo elaboreremo questo argomento sul linguaggio di scripting, piuttosto un argomento infinito sul linguaggio di scripting, per essere più perfetti. I tuoi preziosi pensieri nei commenti sono molto apprezzati, metti mi piace e condividi e aiutaci a diffondere. Fino ad allora rilassati, resta connesso, resta sintonizzato.

Leggi anche: 5 script di shell per imparare a programmare la shell – Parte II