Como todos sabréis, bash tiene su propio lenguaje de programación con un intérprete debajo que permite ejecutar pequeños scripts o programas de mayor o menor complejidad y emplearlo así como un verdadero lenguaje de programación. bash está 100% integrado en el núcleo del sistema GNU/Linux por lo que permite una perfecta integración con todo el sistema.
Una de las cosas que descubrí recientemente programando scripts fue la forma de emplear arrays asociativos, así que la voy a compartir.
#!/bin/bash declare -A array #Array asociativo de pareja (clave, valor). array[192.168.1.1]="host1" array[192.168.1.2]="host2" array[192.168.1.3]="host3" array[192.168.1.4]="host4" echo "Para la IP $1, le corresponde el equipo ${array[$1]}"
Tras esto, al ejecutarlo obtenemos la siguiente salida,
shell> array.bash 192.168.1.2 Para la IP 192.168.1.2, le corresponde el equipo host2
Y también podemos conseguir que se nos imprimar todas las parejas, clave-valor que hay,
#!/bin/bash declare -A array array[192.168.1.1]="host1" array[192.168.1.2]="host2" array[192.168.1.3]="host3" array[192.168.1.4]="host4" for hostname in "${array[@]}" do echo $hostname done
Muy útil. :)
ResponderEliminarExcelente aporte. Ignoraba que se pudiesen usar este tipo de índices.
ResponderEliminarDisponible a partir de la versión 4 de BASH.
Genial!
ResponderEliminar