Tecnología

Inicio

Cómo pasar variables de AWK Shell

Cómo pasar variables de AWK Shell


AWK es una extracción de datos Unix y servicio público en cuestión con su propio lenguaje de script que realiza la manipulación y transformación de los datos textuales y salidas de informes formateados; la entrada proviene de archivos o datos de entrada estándar. AWK es una herramienta útil para proporcionar un filtrado adicional de los datos y la manipulación en una tubería de Unix. AWK generalmente toma la entrada de la línea de comandos shell, pero de vez en cuando las variables pasan a un script puede ser utilizado por la utilidad para llevar a cabo sus acciones. AWK es útil para transformar los datos transmitidos desde la shell de Unix.

Instrucciones

1 Crear un script de shell llamado "awkparam.sh" y que sea ejecutable en la línea de comandos escribiendo:

awkparam.sh; chmod + x awkparam.sh

Esto crea un archivo de script vacío en el directorio actual con permisos de ejecución.

2 Editar y guardar el script de shell con el editor de texto favorito yout y colocar estos comandos en ella:

var = prueba

echo $ var | awk '{print $ var}'

Esto tomará el valor de la variable "var" y el valor de salida, en este caso el valor es "prueba". Ejecutar el script desde la línea de comandos con:

./awkparam.sh

Esta emite el valor de la variable almacenada, "prueba".

3 Editar el script awkparam.sh de nuevo, pero esta vez entre los siguientes mandatos y guardarlo:

var = $ 1

var2 = $ 2

echo "$ var $ var2" | awk '{print $ 1 $ 2}'

Ahora ejecute el comando desde la línea de comandos con:

test2 prueba ./awkparam.sh

Esta es la salida el valor:

test2 prueba

a la pantalla. En este caso Awk ha tomado las variables guardadas, "var" y "var2" y les convierte en su propia representación interna utilizando los parámetros de impresión de $ 1 y $ 2.

Consejos y advertencias

  • Distinguir entre los parámetros ($ 1, $ 2, etc.) pasados ​​a un script de shell de los valores de $ 1, $ 2 en la línea de comandos de AWK mediante el comando "imprimir". Ellos tienen diferentes significados, en la que $ 1, $ 2 pasan a un script de shell son parámetros externos, pero en un comando AWK "imprimir" se refieren a la posición de los campos que se le pasan, como "test2 prueba." Experimento para que se vea cómo funcionan en la práctica.