Il looping è un'arte intrinseca, che può semplificare il tuo lavoro e aiutarti ad automatizzare le attività ripetitive con relativa facilità.
Immagina una situazione in cui devi aggiornare una serie di numeri o testo e invece di farlo manualmente, il sistema lo fa per te. Questo è il potere del loop e i vantaggi che porta in tavola per te.
I loop, come funzione, sono disponibili in quasi tutti i linguaggi di programmazione; Bash di Linux non fa eccezione a questa regola.
Ecco una guida che spiega come utilizzare il ciclo for in uno script di shell.
La struttura del ciclo for
L'uso del ciclo for negli script della shell è ragionevolmente semplice e puoi manipolare la struttura per raggiungere obiettivi diversi.
La struttura di base è la seguente:
per l'elemento in [LISTA]
fare
[COMANDI]
fatto
Con un ciclo, puoi scorrere i valori numerici e di carattere, a seconda della necessità dell'ora.
Imparentato:Come utilizzare i loop in JavaScript
Ecco la struttura di un ciclo for in uno script di shell:
per VARIABILE in 1 2 3 4 5.. n
fare
comando1
comando2
comando N
fatto
È possibile definire il numero di iterazioni nella prima riga. In questo modo, menzionerai il valore iniziale e il valore finale.
Il numero di iterazioni è determinato dai valori specificati, mentre il codice che segue il fare istruzione è il valore del ciclo risultante.
Creazione ed esecuzione di loop in Linux Bash
Apri il terminale Linux per iniziare a scrivere il codice.
Un editor di testo viene utilizzato per memorizzare lo script della shell, che stampa i risultati desiderati quando viene eseguito. A scopo illustrativo, i comandi di questa guida sono scritti nel file Nano editor di testo.
Tipo nano nella riga di comando del terminale per aprire l'editor di testo, seguito dal nome dello script della shell.
nano ForLoops.sh
Puoi cambiare il nome dello script della shell come preferisci. L'estensione è SH, poiché memorizzerai uno script di shell.
Stampa numeri interi usando i cicli for
In questa sezione, i codici seguenti dimostreranno come stampare valori interi in modo diverso. Per utilizzare un ciclo for in uno script di shell per stampare numeri interi, puoi provare alcuni di questi esempi di codice.
1. Codice ciclo per stampare una serie di numeri
Una volta aperto l'editor, è il momento di scrivere il codice.
#!/usr/bin/bash
per io in 1 2 3
fare
echo "Corrente # $i"
fatto
Produzione:
Dove:
- io = nome della variabile per memorizzare i valori ripetuti
- 1 2 3 = numero di volte in cui il ciclo for nello script della shell viene ripetuto
- fare = comando per eseguire un determinato insieme di azioni
- eco = stampa i risultati definiti a fianco
- fatto = fine del ciclo
Salvare il codice nell'editor di testo premendo CTRL+X. Salva ed esci dallo script.
Imparentato: Come utilizzare i cicli For, While e Do While in Java con esempi
Prima di eseguire il codice, è necessario modificare i permessi dello script della shell.
accedere chmod +x seguito dal nome del file dello script della shell:
chmod +x Forloops.sh
Una volta concesse le autorizzazioni, esegui il ciclo for nello script della shell digitando quanto segue:
./Forloops.sh
L'output verrà stampato nella finestra del terminale.
2. Modo alternativo per stampare una serie di numeri
Esistono modi alternativi per definire un ciclo for in uno script di shell. Puoi anche specificare il valore iniziale e finale delle iterazioni del ciclo usando le parentesi graffe.
Ecco la struttura del codice:
for i in {1..3} # un ciclo for definisce una variabile e quante iterazioni vuoi fare attraverso un ciclo
fare
echo "Current # $i: Esempio 2"
fatto
Il ciclo verrà eseguito tre volte e i valori verranno stampati nel modo seguente:
3. Codice di ciclo che utilizza valori di passaggio
Puoi definire i valori di passaggio nel tuo ciclo se vuoi spostarti in modo non sequenziale attraverso le iterazioni. A seconda del valore specificato, l'output avrà uno spazio fisso.
Per esempio:
per i in {1..10..2}
fare
echo "Numero = $i"
fatto
Dove:
- io = variabile per memorizzare le iterazioni
- 1..10 = numero di iterazioni per eseguire il ciclo
- 2 = valore del passo
- fare = comando per stampare l'output
- eco = comando di stampa
- fatto = comando di uscita per il ciclo
Produzione:
L'output ha una differenza di due, che è stata specificata nell'istruzione step.
Stampa i valori dei caratteri usando i cicli for
I cicli For negli script di shell non sono limitati ai soli numeri interi. In Bash, puoi usare un ciclo for per scorrere in modo efficace caratteri e valori di stringa.
1. Passare attraverso le stringhe
Ecco un esempio di base di come è possibile scorrere alcuni valori di stringa (definiti nell'istruzione for):
per il nome in John Jack Mary
fare
echo "Mi chiamo $nome"
fatto
Dove:
- nome = variabile per memorizzare i valori della stringa
- fare = comando per stampare l'output
- eco = comando di stampa
- fatto = comando di uscita per il ciclo
Produzione:
Questo ciclo for iterarà tre volte, poiché ci sono solo tre valori di stringa specificati in per dichiarazione.
2. Passare attraverso stringhe con condizioni
E se volessi superare alcune condizioni logiche per terminare il ciclo a metà? A tale scopo, è possibile utilizzare affermazioni logiche come il SE dichiarazione. L'istruzione IF controlla come funzionerà il ciclo e quale output verrà stampato di conseguenza.
per elemento in Idrogeno Elio Litio Berillio; fare
if [[ "$elemento" == 'Litio' ]]; poi
rottura
fi
echo "Elemento: $elemento"
fatto
echo 'Tutto fatto!'
Imparentato:Come utilizzare i loop con le liste in PythonNon appena il valore dell'elemento è uguale a Litio, il ciclo termina e l'output viene stampato. Il ciclo viene eseguito finché la condizione non è più soddisfatta.
Poiché Lithium è il terzo nell'elenco dei valori, il ciclo verrà eseguito per due iterazioni prima di stampare l'output finale Tutto fatto!.
Esecuzione di loop in Linux Bash
I loop sono una parte essenziale della struttura della shell di Linux, che può migliorare notevolmente la funzione degli script Linux.
Se devi stampare output ripetitivi, non c'è niente di meglio dei loop all'interno degli script Bash. Come accennato in precedenza, i loop sono disponibili in quasi tutti i linguaggi di programmazione e Python non fa eccezione. Elimina le ripetizioni e vivi secondo il codice DRY (Don't Repeat Yourself).
I For Loop sono un'abilità di programmazione essenziale. Scopri come usarli in Python qui.
Leggi Avanti
- Programmazione
- Linux
- Linux
- Linux Bash Shell
- Programmazione
Gaurav Siyal ha due anni di esperienza di scrittura, scrivendo per una serie di società di marketing digitale e documenti sul ciclo di vita del software.
Iscriviti alla nostra Newsletter
Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!
Clicca qui per iscriverti