${ varname :- word }: Om varname existerar och inte är null, returnerar värdet av varname, annars returnerar ordet. Används för att returnera ett standardvärde när en variabel inte existerar eller inte är definierad. Om det är ${ varname - ord } kan det vara null när varname existerar, t.ex. definierar vi myparam=, returnerar värdet av varname, annars returnerar vi ordet. Du kan också ta bort ":", som har samma betydelse och inte upprepas.
${ varname := ord }: Om varname existerar och inte är null, returnerar värdet varname, annars tilldelar det ett ord och returnerar det värdet. Används för att sätta en standard för en variabel som inte existerar eller inte är definierad. För positionsparametrar kan skrivskyddat och inte tilldelas.
${ varname :? meddelande }: Om varname existerar och inte är null, returnerar värdet av varname, annars skriver ut informationen varname:message, och avbryt script, om vi inte sätter message, kommer standardparametern "parameter null eller ej satt" att användas. Används för att kontrollera fel där variabler inte är definierade.
${ varname :+ ord }: Om varname existerar och inte är null, returnerar värdet av ordet, annars returnerar det null. Används för att upptäcka förekomst eller frånvaro av variabler.
${ varname : offset : length }: Operation för att få delsträngen. Han returnerar en sträng av längd från offsetpositionen i varnamet. Den första positionen är 0, om längd inte anges eller är ogiltig (mindre än 0), returneras alla tecken efter offset, och om den är {@:offset:length}, returneras den totala längdparametern för skriptparametern från den första offset-parametern.
Skapa ett nytt test.sh testskript enligt följande:
|