Establecer alias desde el script sh en ESXi 6

Establecer alias desde el script sh en ESXi 6

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.

información relacionada