FizzBuzz: One Simple Interview Question
Sommario:
Le dichiarazioni del caso Bash sono generalmente utilizzate per semplificare condizionali complessi quando si hanno più scelte diverse. L'uso dell'istruzione case anziché delle istruzioni if annidate ti aiuterà a rendere i tuoi script bash più leggibili e più facili da gestire.
L'istruzione case Bash ha un concetto simile con l'istruzione switch Javascript o C. La differenza principale è che, diversamente dall'istruzione switch C, l'istruzione case Bash non continua a cercare una corrispondenza di pattern una volta trovata una ed eseguita istruzioni associate a quel pattern.
In questo tutorial, tratteremo le basi delle dichiarazioni del caso Bash e ti mostreremo come usarle negli script della shell.
Sintassi dell'istruzione case
L'istruzione case Bash ha la forma seguente:
case EXPRESSION in PATTERN_1) STATEMENTS;; PATTERN_2) STATEMENTS;; PATTERN_N) STATEMENTS;; *) STATEMENTS;; esac
- Ogni istruzione case inizia con la parola chiave
case
seguita dall'espressione case e dalla parola chiave in. L'istruzione termina con laesac
chiaveesac
possibile utilizzare più pattern separati dal|
operatore. L'operatore)
termina un elenco di modelli. Un modello può avere caratteri speciali. Un modello e i comandi associati sono noti come clausole. Ogni clausola deve essere terminata con;;
Vengono eseguiti i comandi corrispondenti al primo modello che corrisponde all'espressione. È prassi comune utilizzare il simbolo asterisco con caratteri jolly (*
) come modello finale per definire il caso predefinito. Questo modello corrisponderà sempre. Se non viene trovato alcun modello, lo stato di ritorno è zero. Altrimenti, lo stato di ritorno è lo stato di uscita dei comandi eseguiti.
Esempio di dichiarazione del caso
Ecco un esempio usando l'istruzione case in uno script bash che stamperà la lingua ufficiale di un determinato paese:
languages.sh
#!/bin/bash echo -n "Enter the name of a country: " read COUNTRY echo -n "The official language of $COUNTRY is " case $COUNTRY in Lithuania) echo -n "Lithuanian";; Romania | Moldova) echo -n "Romanian";; Italy | "San Marino" | Switzerland | "Vatican City") echo -n "Italian";; *) echo -n "unknown";; esac
Salvare lo script personalizzato come file ed eseguirlo dalla riga di comando.
bash languages.sh
Lo script ti chiederà di entrare in un paese. Ad esempio, se si digita "Lituania", corrisponderà al primo modello e verrà eseguito il comando
echo
in quella clausola.
Lo script stamperà il seguente output:
Enter the name of a country: Lithuania The official language of Lithuania is Lithuanian
Enter the name of a country: Argentina The official language of Argentina is unknown
Conclusione
Ormai dovresti avere una buona conoscenza di come scrivere le dichiarazioni del caso bash. Sono spesso usati per passare parametri a uno script di shell dalla riga di comando. Ad esempio, gli script init utilizzano le istruzioni case per l'avvio, l'arresto o il riavvio dei servizi.
Regolamento del tribunale di Parigi contro Google in caso di copyright del libro
Il progetto di ricerca dei libri di Google ha subito un ostacolo legale a Parigi venerdì, come ordinato dal tribunale pagare € 300.000 di danni per violazione del copyright
Dichiarazione del copyright Microsoft - Chi possiede le schermate?
Questo articolo cerca di spiegare chi possiede il copyright per gli screenshot Microsoft, sei libero di utilizzare schermate o Esistono limitazioni su come devono essere utilizzati.
RegRun Reanimator analizza il malware e lo rimuove caso per caso
RegRun Reanimator è uno strumento anti-malware che analizza il tuo computer Windows. La parte migliore è che rimuove Malware caso per caso solo dopo un`analisi approfondita.