
Quiero escribir una función que cambie el directorio de trabajo pasando el nombre de una variable de directorio que ya se ha establecido como:
foo () {
cd $"$1"
}
Sin embargo, cuando intento, por ejemplo, foo links obtengo -bash: cd: links: No existe tal archivo o directorio
Es posible hacer esto ?
Respuesta1
Puedes usar dirección indirecta variable:
foo () {
cd "${!1}"
}
dir=/mnt
foo dir
pwd # /mnt