P:1 ¿Qué es Shell Script y por qué es necesario?
Respuesta: Un Shell Script es un archivo de texto que contiene uno o más comandos. Como administrador del sistema, a menudo necesitamos emitir una cantidad de comandos para realizar las tareas diarias, podemos agregar todos estos comandos en un archivo de texto (Shell Script) para completar la tarea de rutina diaria. En otras palabras, podemos descascarar lo que se requiere para la automatización.
P:2 ¿Cuál es el shell de inicio de sesión predeterminado y cómo cambiar el shell de inicio de sesión predeterminado para un usuario específico?
Respuesta: En Linux, como el sistema operativo, «/bin/bash» es el shell de inicio de sesión predeterminado que se asigna durante la creación del usuario. Podemos cambiar el shell predeterminado usando el comando «chsh». El ejemplo se muestra a continuación:
# chsh
# chsh linuxtechi -s /bin/sh
P:3 ¿Cuáles son los diferentes tipos de variables que se utilizan en un script de shell?
Respuesta: En el script de shell de Linux podemos usar dos tipos de variables:
- Variables definidas por el sistema
- Variables definidas por el usuario
Las variables definidas por el sistema son definidas o creadas por el propio sistema operativo (Linux). Estas variables generalmente se definen en letras mayúsculas y se pueden ver con “colocar” comando. Para mostrar el valor de las variables definidas por el sistema, use el comando echo, los ejemplos son echo $PWD o echo $HOME
Las variables definidas por el usuario son creadas o definidas por los usuarios del sistema y los valores de las variables se pueden ver usando el comando «echo $
P:4 ¿Cómo redirigir la salida estándar y el error estándar a la misma ubicación?
Respuesta: Hay dos métodos para redirigir la salida estándar y el error estándar a la misma ubicación. Estos métodos se enumeran a continuación:
Método 1) 2>&1 (# ls /usr/share/doc > out.txt 2>&1 )
Método 2) &> (# ls /usr/share/doc &> out.txt)
P:5 ¿Cuál es la sintaxis de la «sentencia if anidada» en scripts de shell?
Respuesta: la sintaxis básica se muestra a continuación:
Si [ Condition ]
entonces
comando1
comando2
…..
demás
Si [ condition ]
entonces
comando1
comando2
….
demás
comando1
comando2
…..
fi
fi
P:6 ¿Cuál es el uso de «$?» iniciar sesión en el script de shell?
Respuesta: mientras escribe un script de shell, si desea verificar si el comando anterior se ejecutó correctamente o no, entonces podemos usar «$?». Use el comando echo para imprimir el valor de ‘$?’ variable. Esta variable generalmente se usa en la instrucción if para verificar el estado de salida del comando anterior. El ejemplo básico se muestra a continuación:
[email protected]:~#ls/usr/bin/shar
/usr/bin/shar
[email protected]:~# echo $?
0
Si el estado de salida es 0, el comando se ejecuta con éxito
[email protected]:~# ls/usr/bin/compartir
ls: no se puede acceder a /usr/bin/share: no existe tal archivo o directorio
[email protected]:~# echo $?
2
Si el estado de salida es distinto de 0, podemos decir que el comando no se ejecutó correctamente.
P:7 ¿Cómo comparar números en Linux Shell Scripting?
Respuesta: Podemos comparar los números en el script de shell usando parámetros como ‘-gt’ (mayor que), ‘-eq’ (igual a) y ‘-lt’ (menor que) en la instrucción if. El ejemplo se muestra a continuación:
#!/bin/bash
x=10
y=20
Si [ $x -gt $y ]
entonces
echo “x es mayor que y”
demás
echo “y es mayor que x”
fi
P:8 ¿Cuál es el uso del comando de interrupción?
Respuesta: El comando break es una forma sencilla de salir de un bucle en curso. Podemos usar el comando break para salir de cualquier bucle, incluidos los bucles while y till.
P:9 ¿Cuál es el uso del comando continuar en scripts de shell?
Respuesta: El comando continuar es idéntico al comando romper, excepto que hace que se cierre la iteración actual del ciclo, en lugar del ciclo completo. El comando Continuar es útil en algunos escenarios donde se ha producido un error pero aún queremos ejecutar los siguientes comandos del ciclo.
P:10 ¿Dígame la sintaxis de la «declaración de caso» en las secuencias de comandos de shell de Linux?
Respuesta: La sintaxis básica se muestra a continuación:
caso de palabra en
valor1)
comando1
comando2
…..
último_comando
!!
valor2)
comando1
comando2
……
último_comando
;;
esac
P:11 ¿Cuál es la sintaxis básica del ciclo while en scripts de shell?
Respuesta: Al igual que el ciclo for, el ciclo while repite su bloque de comandos varias veces. Sin embargo, a diferencia del bucle for, el bucle while itera hasta que su condición while deja de ser cierta. La sintaxis básica es:
mientras [ test_condition ]
hacer
comandos…
hecho
P:12 ¿Cómo hacer que un script de shell sea ejecutable?
Respuesta: Usando el comando chmod podemos hacer un script de shell ejecutable. El ejemplo se muestra a continuación:
# chmod a+x miscript.sh
P:13 ¿Cuál es el uso de «#!/bin/bash»?
Respuesta: #!/bin/bash es el primero de un script de shell, conocido como shebang, donde el símbolo # se llama hash y ‘!’ se llama como explosión. Muestra que el comando se ejecutará a través de /bin/bash.
P:14 ¿Cuál es la sintaxis del bucle for en el script de shell?
Respuesta: la sintaxis básica del bucle for se proporciona a continuación:
para variables en list_of_items
hacer
comando1
comando2
….
último_comando
hecho
P:15 ¿Cómo depurar un script de shell?
Respuesta: Un script de shell se puede depurar si ejecutamos el script con la opción ‘-x’ (sh -x myscript.sh). Otra forma de depurar un script de shell es usando la opción ‘-nv’ (sh -nv myscript.sh).
P:16 ¿Cómo comparar las cadenas en el script de shell?
Respuesta: el comando de prueba se usa para comparar las cadenas de texto. El comando de prueba compara cadenas de texto comparando cada carácter en cada cadena.
P:17 ¿Cuáles son las variables especiales establecidas por el shell Bourne para los argumentos de la línea de comandos?
Respuesta: La siguiente tabla enumera las variables especiales establecidas por el shell Bourne para los argumentos de la línea de comandos.
P:18 ¿Cómo probar archivos en un script bash shell?
Respuesta: el comando de prueba se usa para realizar diferentes pruebas en los archivos. Las pruebas básicas se enumeran a continuación:
P:19 ¿Cómo poner comentarios en su script bash shell?
Respuesta: Los comentarios son los mensajes para usted y para otros usuarios que describen lo que se supone que debe hacer un script y cómo funciona. Para incluir comentarios en su secuencia de comandos, comience cada línea de comentario con un signo de almohadilla (#) . El ejemplo se muestra a continuación:
#!/bin/bash
# Este es un comando
echo “Estoy conectado como $USUARIO”
P:20 ¿Cómo obtener información del terminal para el script de shell?
Respuesta: el comando ‘leer’ lee datos del terminal (usando el teclado). El comando de lectura toma lo que el usuario escribe y coloca el texto en la variable que nombra. El ejemplo se muestra a continuación:
# vi /tmp/prueba.sh
#!/bin/bash
echo ‘Por favor ingrese su nombre’
leer nombre
echo “Mi nombre es $nombre”
# ./prueba.sh
por favor, escriba su nombre
LinuxTechi
Mi nombre es LinuxTechi
P:21 ¿Cómo desarmar o desasignar variables en Linux?
Respuesta: el comando ‘unset’ se usa para desasignar o desarmar una variable. La sintaxis se muestra a continuación:
# unset
P:22 ¿Cómo realizar operaciones aritméticas en Linux?
Respuesta: Hay dos formas de realizar operaciones aritméticas:
1. Usando el comando expr (# expr 5 + 2)
2. usando un signo de dólar y corchetes ($[ operation ] )
Ejemplo: prueba=$[16 + 4] ; prueba=$[16 + 4]
P:23 ¿Sintaxis básica de la instrucción do-while?
Respuesta: La sentencia do-while es similar a la sentencia while pero realiza las sentencias antes de comprobar la sentencia de condición. El siguiente es el formato para la instrucción do-while:
hacer
{
declaraciones
} mientras (condición)
P:24 ¿Cómo definir funciones en secuencias de comandos de shell?
Respuesta: Una función es simplemente un bloque de código con un nombre. Cuando le damos un nombre a un bloque de código, podemos llamar a ese nombre en nuestro script y ese bloque se ejecutará. El ejemplo se muestra a continuación:
$ uso de disco () { df -h ; }
P:25 ¿Cómo usar bc (calculadora bash) en un script de shell bash?
Respuesta: use la siguiente sintaxis para usar bc en el script de shell.
variable=`echo “opciones; expresión” | bc`
Leer también: 20 preguntas y respuestas de la entrevista de comandos de Linux