Ciclo for
Fa parte della sezione Fondamenti del percorso Terminal di Coddy. Lezione 71 di 82.
A volte devi ripetere un’azione più volte. Invece di scrivere lo stesso comando più e più volte, puoi usare un ciclo for per scorrere un elenco di elementi ed eseguire un’azione su ciascuno di essi.
Ecco la struttura di base di un ciclo for in Bash:
#!/bin/bash
for name in Alice Bob Charlie; do
echo "Hello, $name!"
doneQuesto script stampa un saluto per ogni nome nell’elenco. La variabile name assume a turno ciascun valore: prima "Alice", poi "Bob", poi "Charlie". La parola chiave do segna l’inizio del corpo del ciclo e done lo conclude.
I cicli for sono particolarmente potenti se combinati con i caratteri jolly. Puoi scorrere tutti i file di una directory:
#!/bin/bash
for file in *.txt; do
echo "Processing $file"
doneQuesto scorre ogni file .txt nella directory corrente. A ogni iterazione, la variabile file contiene il nome del file corrente, consentendoti di eseguire automaticamente operazioni su ogni file.
Puoi anche scorrere un intervallo di numeri usando l'espansione delle parentesi graffe:
#!/bin/bash
for i in {1..5}; do
echo "Number: $i"
doneQuesto stampa i numeri da 1 a 5. I cicli for trasformano le attività ripetitive in poche righe di codice, rendendo i tuoi script più efficienti e facili da mantenere.
Sfida
FacileCrea uno script shell chiamato countdown.sh che usi un ciclo for per stampare un conto alla rovescia da 5 a 1.
Lo script deve:
- Iniziare con la riga shebang (
#!/bin/bash) - Usare un ciclo for con l'espansione delle parentesi graffe per scorrere i numeri da 5 a 1
- Stampare ogni numero su una riga separata nel formato:
Countdown: [number]
Rendi eseguibile lo script e avvialo. L'output dovrebbe essere:
Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1Suggerimento: Usa
{5..1}per creare un intervallo decrescente. All'interno del ciclo, usaecho "Countdown: $i", doveiè la variabile del ciclo.
Provalo tu
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Cartelle
Creare una cartellaCopiare una cartellaSpostare e rinominare una cartellaEliminare una cartellaRiepilogo - Operazioni sulle cartelle7Contenuto dei file
Head e TailConteggio delle paroleComando SortComando UniqueNozioni di base su GrepGrep con opzioniRiepilogo - Detective del testo10Progetto di analisi dei log
Panoramica del progettoVisualizzare il file di log2Navigazione
Stampare la directory di lavoroElencare i fileCambiare directoryPercorsi assoluti e relativiDirectory home e radiceRiepilogo - Trova la tua strada5Progetto di organizzazione delle foto
Panoramica del progettoCreazione della struttura8Reindirizzamento
Uscita standardSovrascrivere un fileAccodare a un fileIngresso standardErrore standardRiepilogo - Creare un log3File
Creare un fileLeggere un fileCopiare un fileSpostare e rinominare un fileEliminare un fileRipasso: operazioni sui file6Caratteri jolly e pattern
Il carattere jolly asteriscoIl carattere jolly punto interrogativoCaratteri jolly tra parentesi quadreCombinare i caratteri jollyRiepilogo - Operazioni selettive9Pipe
Che cos'è una pipeConcatenare due comandiConcatenare più comandiPipe con grepRiepilogo - pipeline dei datiEsercitati da solo: Playground Terminal