${ nombre de var :- palabra }: Si el varname existe y no es nulo, devuelve el valor de varname, de lo contrario devuelve palabra. Se utiliza para devolver un valor por defecto cuando una variable no existe o no está definida. Si es ${ varname - palabra }, puede ser nulo cuando existe el varname, por ejemplo, definimos myparam=, devolviendo el valor del varname, de lo contrario devolviendo la palabra. También puedes borrar ":", que tiene el mismo significado y no se repite.
${ nombre de varname := palabra }: Si existe varname y no es nulo, devuelve el valor de varname, de lo contrario le asigna un valor de palabra y devuelve ese valor. Se utiliza para establecer un valor por defecto para una variable que no existe o no está definida. Para parámetros de posición, solo lectura y no se pueden asignar.
${ varname :? mensaje }: Si existe varname y no es nulo, devuelve el valor de varname, de lo contrario imprime la información varname:message y aborta el script; si no establecemos mensaje, se usará el valor predeterminado "parameter null or not set". Se utiliza para comprobar errores donde las variables no están definidas.
${ nombre de var :+ palabra }: Si existe varname y no es nulo, devuelve el valor de palabra; de lo contrario, devuelve nulo. Se utiliza para detectar la presencia o ausencia de variables.
${ varname : offset : longitud }: Operación para obtener la subcuerda. Él devuelve una cadena de longitud desde la posición desplazada en el varname. La primera posición es 0, si no se indica longitud o es inválida (menos que 0), se devuelven todos los caracteres posteriores al desplazamiento, y si es {@:offset:length}, se devuelve el parámetro total de longitud del parámetro de script del primer parámetro de desplazamiento.
Crea un nuevo script de prueba test.sh de la siguiente manera:
|