${ varname :- word }: Se il varname esiste e non è nullo, restituisce il valore del varname, altrimenti restituisce la parola. Utilizzato per restituire un valore predefinito quando una variabile non esiste o non è definita. Se è ${ varname - word }, può essere nullo quando il varname esiste, ad esempio definiamo myparam=restituendo il valore del varname, altrimenti restituiamo la parola. Puoi anche eliminare ":", che ha lo stesso significato e non si ripete.
${ nome di fortuna := parola }: Se esiste varname e non è nullo, restituisce il valore di varname, altrimenti gli assegna un valore di parola e restituisce quel valore. Usata per impostare un valore predefinito per una variabile che non esiste o non è definita. Per i parametri di posizione, solo lettura e non possono essere assegnati.
${ varname :? messaggio }: Se varname esiste e non è nullo, restituisce il valore di varname, altrimenti stampa l'informazione varname:message e annulla lo script; se non impostiamo messaggio, verrà usato il parametro predefinito "null or not set". Utilizzato per controllare errori in cui le variabili non sono definite.
${ varname :+ word }: Se il varname esiste e non è nullo, restituisce il valore della parola, altrimenti restituisce nullo. Usata per rilevare la presenza o l'assenza di variabili.
${ varname : offset : lunghezza }: Operazione per ottenere la sottostringa. Restituisce una sequenza di lunghezza dalla posizione offset nel varname. La prima posizione è 0, se la lunghezza non è data o è invalida (meno di 0), tutti i caratteri dopo l'offset vengono restituiti, e se è {@:offset:length}, viene restituito il parametro di lunghezza totale del parametro dello script dal primo parametro di offset.
Crea un nuovo script di test test.sh come segue:
|