La diferencia entre varios bucles:
bucle hasta, siempre que la condición específica sea falsa, se ejecutará la instrucción hasta.
El ciclo while ejecutará el ciclo
for siempre que la condición especificada sea verdadera. El ciclo "for" siempre recibe un cierto tipo de lista de palabras después de la instrucción "in".
El significado de i ++ es en realidad i + 1
doble paréntesis:
1. echo $ ((16 # 5f)) El resultado es 95 (hexadecimal a decimal)
2. Redefina el valor de la variable, como a = 5; ((a ++)) Sí Redefinir $ a como 6
parámetros de comparación numéricos:
Es igual a [-eq]
Mayor o igual a [-ge]
Es mayor que [-gt]
Menor o igual a [- le]
Menor que [-lt]
No es igual a [-ne]
Mayor mayor que mayor
igual a igual
menor
que
leer Función de comando:
leer una línea de la entrada estándar y poner cada línea de entrada El valor de cada campo se asigna al
parámetro de la variable de shell :
-a seguido de una variable, la variable se considerará una matriz y luego se asignará un valor, el valor predeterminado es usar un espacio como separador.
-d va seguido de un identificador. De hecho, sólo el primer carácter después de él es útil. Como signo del final, se dará un ejemplo.
-p va seguido de información de solicitud, es decir, la información de solicitud se imprime antes de la entrada.
-e Función de finalización de comandos al ingresar.
-n va seguido de un número para definir la longitud del texto de entrada, lo cual es muy práctico.
-r Escudo. Si no existe tal opción, se usará como un personaje de escape. Si la hay, será un personaje normal.
-s Modo silencioso, ya no se muestra en la pantalla al ingresar caracteres, como ingresar una contraseña al iniciar sesión.
-t seguido del número de segundos, define el tiempo de espera para los caracteres de entrada.
-u seguido de fd, se lee en el descriptor de archivo, que exec puede abrir nuevamente.
-z juzga el valor de la variable, si está vacía; cero = 0
- El valor de la variable, está vacío, devuelve 0, es verdadero
- El valor de la variable, no vacío, devuelve 1, que es falso
-n Determina si el valor de la variable está vacío o no nombre = nombre - El valor de la variable, si está vacío, devuelve 1, que es falso
- El valor de la variable, no vacío, devuelve 0 y es verdadero. La
variable de parámetro posicional es un número estándar:
$ 0 es el nombre del programa, $ 1 es el primer parámetro, $ 2 es el segundo parámetro, y así sucesivamente, hasta el noveno parámetro $ 9.
-z juzga el valor de la variable, si está vacía; cero = 0 - El valor de la variable, está vacío, devuelve 0, es verdadero
- El valor de la variable, no vacío, devuelve 1, que es falso
-n Determina si el valor de la variable está vacío o no nombre = nombre - El valor de la variable, si está vacío, devuelve 1, que es falso
- El valor de la variable, no vacío, devuelve 0, es verdadero
|| y && uso:
OR lógico, solo la ejecución previa de || ejecutará el
AND lógico posterior , y solo la ejecución previa de && ejecutará el último
La variable especial de shell
$ 0, el nombre de archivo
$ n del script actual, se pasa al parámetro del script o función. n es un número que indica el número de parámetros. Por ejemplo, el primer parámetro es $ 1 y el segundo parámetro es $ 2.
$ # El número de parámetros pasados al script o función.
$ Todos los parámetros pasados al script o función.
$ @ Todos los parámetros pasados al script o función. Cuando está entre comillas dobles (""), es ligeramente diferente de
$. $? El estado de salida del comando anterior o el valor de retorno de la función.
$$ ID de proceso de Shell actual. Para los scripts de Shell, es el ID de proceso donde se encuentran estos scripts. La diferencia entre $ * y $ @. Tanto $ como $ @ indican todos los parámetros pasados a la función o al script. Cuando no están entre comillas dobles (""), todos terminan con " Todos los parámetros se emiten en forma de $ 1 "" $ 2 "…" $ n ". Pero cuando están entre comillas dobles (""), "$ " tomará todos los parámetros como un todo y generará todos los parámetros en forma de "$ 1 $ 2… $ n"; "$ @" separará cada parámetro para "$ 1" "$ 2"… "$ n" Todos los parámetros se emiten en forma de. $ {# P_array [ ]} ¿Qué significa esto en el shell? Entre ellos (P_array es el nombre de la matriz) obtiene el número de elementos de la matriz: $ {# arrayname [@]}
Obtener un elemento de la matriz: $ nombre de matriz [índice]
Modificar un elemento de la matriz: nombre de matriz [índice] = nuevo valor
Obtener todos los elementos de la matriz: $ {nombre de matriz [ ]}
función:
valor de retorno: uso del
resultado resultado = $ (db1) #Guardar la salida de la función a la variable
echo "El nuevo valor es $ resultado" #Variable de salida (es decir, la salida de la función de salida) resultado = $ (addem 10 15) #pasar a la función addem Dos parámetros, y luego guardar el resultado de la ejecución de los parámetros pasados en la variable result
echo "El nuevo valor es $ result" #output el resultado guardado en la variable result