He creado un script simple para configurar un alias en un host ESXi 6.7:
#!/bin/sh
alias ll="ls -la"
echo "Profile done"
Cuando ejecuto el script, veo el mensaje repetido en la pantalla, pero el alias no está configurado. Pero si ejecuto el comando alias desde un símbolo del sistema, funciona bien.
¿Alguien puede explicar cómo configurar un alias desde un script?
Respuesta1
Para mí esto funciona como se esperaba. Asegúrese de obtener el script como fuente puntual de esta manera:
. ~/.profile
en lugar de ejecutarlo así
~/.profile
Este último genera un nuevo proceso de shell donde se crea el alias, pero luego finaliza el shell generado, dejando el shell de llamada original sin modificar.
Si guarda su secuencia de comandos como ~/.profile, también obtendrá el origen adecuado cuando cierre la sesión y vuelva a iniciarla.