Todo lo que necesita saber para comenzar a escribir programas Bash

[*]Los scripts de Bash son útiles para automatizar tareas y descubrirá que son excelentes para crear aplicaciones de línea de comandos simples. El shell de Bash interpreta los scripts de Bash, por lo que no necesitará instalar ninguna dependencia para escribirlos y ejecutarlos. Los scripts Bash también son portátiles ya que la mayoría de los sistemas operativos basados ​​en Unix usan el mismo intérprete de shell.

[*]El conocimiento de las secuencias de comandos de Bash es imprescindible para todos los desarrolladores, especialmente si trabaja con sistemas basados ​​en Unix.

Variables en bash

[*]Las variables de Bash distinguen entre mayúsculas y minúsculas. Para declarar variables, use un signo igual (=) con el nombre a la izquierda y el valor a la derecha:

                      
                        STATE=Washington
                        

[*]El valor que esta declaración asigna a ESTADO es una sola palabra. Si necesita espacios en su valor, use comillas alrededor:

                      
                        STATE="North Arizona"
                        

[*]Necesitarás usar un signo de dólar ps prefijo para referenciar variables en otras variables o declaraciones:

                      
                        STATE=Washington
                        
LOCATION="My Location is $STATE "

Imprimiendo Valores en Bash

[*]Hay varias formas de imprimir variables en Bash. Puedes usar el eco comando para salida básica o estilo C imprimir comando para el formato de cadena.

                      
                        STATE=Washington
                        
LOCATION="My Location is $STATE "
echo $LOCATION

[*]Después de declarar el ESTADO variable, este script define UBICACIÓN haciendo referencia al ESTADO. If luego usa echo para imprimir el valor final de la variable LOCATION.

[*] los imprimir La palabra clave le permite usar verbos de formato para generar datos. Los verbos de formato de cadena son similares a los de C y Go pero con verbos limitados.

Verbo Funcionalidad
%C imprime caracteres individuales
%o imprime octadecimales
%s imprime cadenas, independientemente de la carcasa
%X imprime minúsculas hexadecimales
%X imprime mayúsculas hexadecimales
%d imprime números enteros
%mi imprime la noción científica flota en minúsculas
%MI imprime la noción científica flotante en mayúsculas
%F imprime números de punto flotante
%% imprime un solo símbolo de porcentaje.

[*]Aquí hay un example de usar un verbo con el impresión palabra clave.

                      
                        STATE=Lagos
                        
printf "My Location is %s" $STATE

[*]los imprimir La función sustituiría a la ESTADO variable en la posición del %s verbo, y la salida sería “Mi ubicación es Lagos”.

Comentarios en Bash

[*]Puede hacer comentarios en Bash con el hash o la libra ( # ) símbolo. El shell ignora automáticamente los comentarios.

                      
                        
                          #!/bin/bash
                        
                        
# STATE=Washington
# LOCATION="My Location is $STATE"

[*]No hay comentarios de varias líneas. La mayoría de los IDE y editores de texto le permiten comentar con el atajo Ctrl/Command + barra diagonal(/). Debería poder usar el acceso directo para crear varios comentarios de una sola línea.

Recepción de la entrada del usuario en Bash

[*]Como muchos otros lenguajes de programación, puede recibir información del usuario en Bash para hacer que sus programas/guiones sean más interactivos. Puedes usar el leer comando para solicitar la entrada del usuario.

                      
                        
                          read
                        
                         response
                        

[*]En este caso, el respuesta La variable contendrá la entrada del usuario en el momento de la entrega.

                      
                        echo "What do you want ?: "
                        
read response
echo $response

[*]La solicitud de entrada del usuario estará en una nueva línea en el example arriba.

[*] Puedes agregar el -norte bandera a la eco declaración de impresión para retener la línea donde el usuario ingresa la entrada.

                      
                        echo -n "What do you want."
                        
read response
echo $response

Declarando arreglos en Bash

[*]Las matrices en Bash son como la mayoría de los idiomas. Puede declarar una variable de matriz en Bash especificando los elementos entre paréntesis.

                      
                        Countries=('USA' 'Russia' 'Ukraine', "England", "Taiwan", "China")
                        

[*]Acceder a una matriz a través de la referencia al nombre de la variable obtendría el primer elemento. Puede acceder a toda la matriz utilizando el signo de asterisco como índice.

                      
                        echo ${Countries[*]}
                        

[*]También puede especificar el índice de la matriz para acceder a un elemento específico. El índice de una matriz comienza en cero.

                      
                        
                          echo
                        
                         "
                        
                          ${Countries[4]}
                        
                        "
                        

Declaraciones condicionales en Bash

[*]Bash proporciona condicionales para la toma de decisiones en los programas.

[*]Esta es la anatomía de una instrucción if-else en Bash. Tendrá que usar el punto y coma para especificar el final de la condición.

                      
                        
                          if
                        
                         [[ condition ]]; 
                        
                          then
                        
                        
echo statement1
elif [[condition ]]; then
echo statement2
else [[condition ]]; then
echo statement3
fi

[*]Debes terminar cada si declaración con el fi palabra clave.

                      
                        
                          if
                        
                         [ 1 == 2 ]; 
                        
                          then
                        
                        
echo one
elif [ 2 == 3 ]; then #else-if
echo two
else [ 4 > 3 ];
echo "correct, 3"
fi

[*]Puede usar declaraciones de casos en sus programas Bash usando el caso palabra clave. Tendrá que especificar el patrón seguido de paréntesis antes de la declaración.

                      
                        CITY=Lagos
                        
case $CITY in
"Washington") # pattern
echo "United States of America" # statement
;; # end of a case
"Lagos" | "Abuja")
echo "Nigeria"
;;
"Johannesburg" | "Cape Town")
echo "South Africa"
;;
*) # default pattern
echo "Antarctica" # default statement
;;
esac # end of the case statement

[*]Puede definir el caso predeterminado utilizando el asterisco firmar como el patrón. Las declaraciones de caso deben terminar con el esac

palabra clave.

[*]Bucles en Bash

[*]Según sus necesidades, puede usar un ciclo while, un ciclo for de rango o un ciclo for de estilo C para operaciones recurrentes. example Aquí hay un del bucle for de estilo C. Los bucles for deben terminar con el hecho palabra clave, y debe terminar la instrucción for con un punto y coma seguido del hacer

                      
                        
                          for
                        
                         ((a = 0 ; a < 10 ; a+2)); 
                        
                          do
                        
                        
echo $a
done

[*]palabra clave. El rango for loop es útil para trabajar con archivos y muchas otras operaciones. Necesitarás usar el en

                      
                        
                          for
                        
                         i 
                        
                          in
                        
                         {1..7}; 
                        
                          do
                        
                        
echo $1
done

[*]palabra clave con el rango for-loop. Aquí hay un ciclo infinito simple para demostrar Bash tiempo

                      
                        name=1
                        
while [ 1 -le 5 ] # while 1 < 5
do
echo $name
done

[*]bucles en acción. los -le

en la declaración de condición es el operador binario para menos de.

[*]Funciones en bash

                      
                        
                          
                            print_working_directory
                          
                        
                        () {
                        
echo $PWD #calling the PWD command from the script
}
echo "You are in $(print_working_directory)"

[*]No necesita palabras clave para declarar funciones en Bash. Puede declarar funciones con el nombre y luego paréntesis antes del cuerpo de la función. Las funciones pueden devolver variables en Bash. Todo lo que necesitas es el devolver

                      
                        
                          
                            print_working_directory
                          
                        
                        () {
                        
return $PWD
}

[*]palabra clave. los imprimir_directorio_de_trabajo

La función devuelve el directorio de trabajo del archivo.

[*]Puede escribir scripts de shell en otros idiomas

[*]Bash no es el único lenguaje que puede usar para interactuar con el shell de su sistema operativo o crear aplicaciones de línea de comandos. Puede usar muchos otros lenguajes como Go, Python, Ruby y Rust.

Muchos sistemas operativos tienen Python3 preinstalado y Python es un lenguaje predominante. Si necesita aún más funcionalidad de la que pueden ofrecer los scripts de Bash, considere usar Python.

Related Posts