Установить псевдоним из скрипта sh в ESXi 6

Установить псевдоним из скрипта sh в ESXi 6

Я создал простой скрипт для настройки псевдонима на хосте ESXi 6.7:

#!/bin/sh
alias ll="ls -la"
echo "Profile done"

Когда я запускаю скрипт, я вижу сообщение echo'd на экране, но псевдоним не установлен. Но если я выполняю команду псевдонима из командной строки, она работает нормально.

Может ли кто-нибудь объяснить, как настроить псевдоним из скрипта?

решение1

Для меня это работает так, как и ожидалось. Убедитесь, что вы указали источник скрипта, как здесь:

. ~/.profile

вместо того, чтобы сделать это вот так

~/.profile

Последний порождает новый процесс оболочки, в котором создается псевдоним, но затем завершает порожденную оболочку, оставляя исходную вызывающую оболочку без изменений.

Если вы сохраните свой скрипт как ~/.profile, он также будет правильно загружен, когда вы выйдете из системы и войдете в нее снова.

Связанный контент