¿Qué es $@ en un script bash??

¿Qué es $@ en un script bash??
La mayoría de nosotros usamos scripts bash para mantenimiento y ciertas otras tareas. Sin embargo, no siempre estamos familiarizados con las diversas opciones de bash. Cada vez que un usuario es un novato de Bash Shell y Linux, el usuario tiende a buscar un script bash preescritado. Esto se debe a que algunos usuarios encuentran los personajes bash únicos como $@, $ _ y $ 1 confuso. Comenzando con el parámetro $@ bash, se está utilizando para extenderse a los argumentos posicionales. Cada parámetro se extiende a algo así como una palabra distinta cuando la expansión ocurre dentro de las quotas dobles. Los parámetros separados deben ser adjuntos en citas y distinguirse por un espacio si se usa $@. Recuerde que $@ debe cotizarse para funcionar correctamente. Sin embargo, se comporta de manera similar a los argumentos como cadenas distintas.

Miramos varios ejemplos para explicar la funcionalidad de $@ en el script bash mientras usan Ubuntu 20.04 Sistema:

Ejemplo 01:

Al principio, necesitamos iniciar sesión desde el Ubuntu 20.04 Distribución como usuario de sudo. Después del inicio de sesión exitoso, abriremos la línea de comando para comenzar a funcionar. Para abrirlo, usar "Ctrl+Alt+T". Como alternativa, también podemos usar el área de actividad para encontrar el terminal de la consola desde la barra de búsqueda. Después de abrirlo correctamente, comenzaremos a trabajar en $@ en Bash creando un nuevo archivo bash. Entonces, hemos estado utilizando el "tocar"Consulta con el nombre de un archivo como"uno.mierda". Tenga en cuenta que el archivo bash contiene un ".mierda" extensión. Golpear "Ingresar"Después de escribir la siguiente instrucción en el shell para ejecutarla. Encontrará el archivo bash recién generado en su directorio de inicio de Ubuntu 20.04:

$ touch one.mierda

Ahora, se ha generado el archivo bash; Tenemos que abrirlo en un editor para agregar y editar el script bash dentro de él. Entonces, lo abriremos usando el "Gnu nano"Editor de la capa terminal. Por lo tanto, hemos usado el "nano"Instrucción de palabras clave en el shell junto con el nombre de un archivo como"uno.mierda"Según la siguiente imagen:

$ nano uno.mierda

Debe escribir el siguiente script de tres líneas en su archivo bash "uno.mierda". Hemos agregado primero la extensión de Bash en el archivo. Después de eso, hemos utilizado las tres declaraciones de eco en este script para usar los tres caracteres especiales y generar sus respectivos resultados. Tenga en cuenta que el "ps"El carácter se ha utilizado para generar el número total de cadenas de valores de entrada o parámetros que el usuario agregará en el shell. El "ps"El carácter se usa para mostrar esos tres valores o parámetros en el terminal, y el" "ps?"El personaje tiene una tarea especial para devolver 0 si el último comando se vuelve exitoso. En Bash, el "Ctrl+S"El acceso directo se usa con frecuencia para guardar el archivo Bash mientras está abierto en algún tipo de"nano" editor. Entonces, guarda tu uno.archivo sh y déjelo usando "CTRL+X"Para devolverlo a la terminal:

Ahora, el script bash recién creado se ha guardado y asegurado en nuestro sistema; Ya es hora de hacerlo ejecutable. Debe tener en cuenta que el personaje como $@ toma parámetros de valores dentro del terminal durante la ejecución de un archivo. Entonces, usa el "intento"Consulta de palabras clave en su shell Ubuntu con el nombre de un archivo"uno.mierda"Y asignar valores de parámetros, como se indica. Puede ver en el SNAP a continuación que hemos proporcionado 3 valores de parámetros de tipo de cadena al script bash.ella.gramo., AQSA, Rimsha y Awan. El resultado de salida está mostrando la salida de 3 líneas. La primera línea muestra el número de parámetros totales agregados. La segunda línea está mostrando los valores de los argumentos aprobados por el usuario. Por último, la tercera línea muestra 0 como su valor de retorno porque el comando de segunda línea se ha vuelto exitoso:

$ Bash One.sh arg1 arg2 arg3

Ejemplo 02:

Para comprender más el concepto de caracteres y funcionalidad de $@, necesitamos otro ejemplo en nuestro artículo. Por lo tanto, abriremos el mismo archivo, "uno.mierda", Con el editor de GNU Nano. Para esto, hemos probado las siguientes instrucciones y hicimos clic en el botón "Enter" desde el teclado para continuar:

$ nano uno.mierda

Como se abre el archivo ahora, le agregaremos un script bash nuevo y actualizado. Esta vez, hemos estado usando un script bash simple para elaborar la función del personaje $@. Por lo tanto, debe actualizar su script bash con el que se muestra en la imagen a continuación. Estamos utilizando el bucle for para tomar un elemento a la vez, ya que los argumentos pasaron en $@ por un usuario en el terminal. Cada elemento se muestra en el terminal a través de la instrucción ECHO. Después de guardar el archivo, volvimos a la consola para ejecutar el script bash:

Dentro de la instrucción bash, hemos pasado los argumentos de tipo 5 cadenas junto con el nombre de un archivo "uno.mierda". Al golpear el "Ingresar"Clave, el terminal se ha mostrado con cada argumento por separado:

$ Bash One.sh arg1 arg2 arg3 arg4 arg5

Ejemplo 03:

Echemos un vistazo más de cerca a otro mismo ejemplo de $@ como se elaboró ​​anteriormente. En este ejemplo, usaremos $@ y $* para comparar y diferenciar el funcionamiento de ambos caracteres especiales. De esta manera, podremos entender el funcionamiento de $@ personaje correctamente. Para abrir el archivo ya creado "uno.mierda", Escriba y luego ejecute las siguientes instrucciones dentro de su consola de Ubuntu 20.04.

$ nano uno.mierda

Hemos actualizado el código de ejemplo anterior. Todo lo que hemos hecho es agregar el mismo código para "ps"Dentro del bucle for. Hemos guardado el código BASH y salimos del archivo:

Mientras que la ejecución, debido al uso del carácter de $*, muestra la primera línea como todo parámetros. Todas las otras líneas son la salida de $@ carácter:

$ Bash One.sh arg1 arg2 arg3 arg4 arg5

Ejemplo 04:

En nuestro último ejemplo, explicaremos la funcionalidad de $@ carácter a través de funciones y bucles. Por lo tanto, para actualizar el script bash, hemos abierto el archivo "uno.mierda"Una vez más por el"nano"Comando del editor en el shell de la siguiente manera:

$ nano uno.mierda

Esta vez, hemos estado utilizando el método foo () para imprimir los argumentos pasados ​​en los métodos respectivos de caracteres especiales hasta que no obtenga nada. El método "Dólar1"Es para $@ personaje especial y"Dólar2"Para $* funcionamiento del personaje. Ambos métodos contienen el llamado del método foo () con el carácter especial $@ y $* por separado para aprobar argumentos. Los métodos Dollar1 y Dollar2 se llaman después de las declaraciones de eco, mientras que ambos contienen los mismos tres argumentos que sus valores paramétricos:

La ejecución del código muestra la salida para los métodos Dollar1 y Dollar2 por separado. El "Usar $@" muestra el resultado por $@, y el "Usar $*" está mostrando la salida para $* caracteres por separado.

$ Bash One.mierda

Conclusión:

Esta guía ha descrito cómo usar $@ en el script bash, declararlo y cómo funciona. También hemos descrito la diferencia entre $@ y otros personajes relacionados con el dólar para que sea más comprensible. Esperamos que lo haya disfrutado también mientras lo implementan.