bases de programación script de shell (c)

comando estructurado (a)

si-entonces y las declaraciones de casos.
Aquí Insertar imagen DescripciónAquí Insertar imagen Descripción
If-then-else
Aquí Insertar imagen Descripción
cuando el comando devuelve si la declaración de un código de estado de salida distinto de cero, shell bash ejecuta el comando en el otro.
Problemas anidados if-then declaración de que el código es difícil de leer, difícil de solucionar un flujo lógico.
Otra forma puede ser utilizado otra parte: elif. Por lo tanto no hay necesidad de escribir más si-entonces un comunicado. elif maquillaje
continuidad con otra porción else if-then.
Aquí Insertar imagen Descripción
declaración elif proporciona una línea de comandos para otra prueba, que es similar a la original si la línea comunicado. Si el estado de salida después del comando elif es 0, entonces bash ejecutará el comando se la segunda parte de la declaración. Usando este método de anidación, código más claro, la lógica más comprensible.
Aquí Insertar imagen Descripción
elif comando retorna un valor de estado de salida distinto de cero. Esto hace elif bloque else se ejecuta el bloque.

Elif pluralidad de estados puede continuar cadena juntos, forman un gran composición anidada if-then-elif.
Aquí Insertar imagen Descripción
Cada comando se ejecutará si 0 comando devuelve el estado de salida basado en. Recuerde, cáscara del golpe será seguido por la aplicación de la sentencia if, sólo la primera parte de la vuelta a continuación, el código de salida 0 en la declaración será ejecutado.

Se puede utilizar el comando de prueba para determinar si la variable contenido. Esto sólo requiere unos simples expresiones condicionales.
Aquí Insertar imagen Descripción
Cuando el comando de prueba para probar condiciones, devuelve un código de salida de 0. Esto hace que se ejecute la sentencia comunicado a continuación en el bloque.
Aquí Insertar imagen Descripción
Los corchetes definen condiciones de prueba. No hay necesidad de declarar comando test sentencia if-then. Tenga en cuenta que después de la primera y antes de la segunda corchetes corchetes deben agregar unaen blancoDe lo contrario, el error.
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción
Este script sólo un signo mayor que, no hay ningún error, pero el resultado es incorrecto. Ninguna explicación se ha vuelto mayor que la salida del script redirige
a. Por lo tanto, se crea un archivo llamado hockey. Debido a la finalización con éxito de redirección, comando de prueba devuelve un código de salida de 0, si la declaración y pensar que todos los comandos se concluyeron con éxito.
Para resolver este problema, necesitamos escapado adecuadamente signo mayor que.
Aquí Insertar imagen Descripción
Prueba de comparación, las letras mayúsculas se considera que son menos de letras minúsculas. Sory comando En su lugar, se ordena el uso configuración de idioma localizados para el sistema definido. Las letras minúsculas aparecen antes que las letras mayúsculas.
Aquí Insertar imagen Descripción
Aquí Insertar imagen Descripción
Compuesto condición de prueba
si-entonces declaraciones le permiten utilizar la lógica booleana para combinar prueba. Hay dos operadores booleanos están disponibles:
 [condición1] && [condición2 El] el operador booleano, entonces que parte de la ejecución del comando, se deben cumplir dos condiciones.
 [condition1] || [condition2] O operador booleano, cualquier condición es verdadera, entonces parte de se ejecuta el comando.

Doble paréntesis,
Aquí Insertar imagen Descripción
la expresión puede ser cualquier cesión o expresiones de comparación matemáticos. Además de los operadores matemáticos estándar utilizar el comando de prueba,
se utilizará la Tabla 12-4 enumera los otros operadores al mando doble paréntesis.
Aquí Insertar imagen Descripción
Puede duplicar comando paréntesis, también se puede utilizar para asignar el comando general en un script utilizado en la sentencia if.
Tenga en cuenta,no tiene por qué ser de doble frenos es mayor que el número de expresiones escapado. Esta es otra avanzada paréntesis dobles característica ofrecida comando.

corchetes dobles : proporciona funciones avanzadas para comparar cadenas.
Aquí Insertar imagen Descripción
Ambas partes utilizan la expresión entre paréntesispruebaComando criterio de comparación de cadenas empleado. Pero proporciona otros comandos de prueba de características que no están disponibles -La coincidencia de patrones( la coincidencia de patrones).

si [[$ USER == r * ]]
cadena bis es igual a la derecha (r *) como un patrón, y las reglas de coincidencia de patrones de aplicación. corchetes dobles para que coincida con el comando variable de entorno de usuario para ver si se comienza con la letra r. Si es así, por comparación, la cáscara ejecutará entonces la sección de comandos.

Con el comando caso, no es necesario para escribir toda la declaración elif comprobar constantemente el valor de la misma variable. comando caso a la pluralidad de valores de comprobación usando un único formato lista de variables.
Aquí Insertar imagen Descripción

Publicado 35 artículos originales · ganado elogios 49 · Vistas de 100.000 +

Supongo que te gusta

Origin blog.csdn.net/qq_44710568/article/details/105072161
Recomendado
Clasificación