在 ESXi 6 中從 sh 腳本設定別名

在 ESXi 6 中從 sh 腳本設定別名

我創建了一個簡單的腳本來在 ESXi 6.7 主機上設定別名:

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

當我運行腳本時,我在螢幕上看到回顯訊息,但未設定別名。但如果我從命令提示字元執行別名命令,它就可以正常工作。

有人可以解釋如何從腳本設定別名嗎?

答案1

對我來說,這按預期工作。確保您像這樣獲取腳本:

. ~/.profile

而不是像這樣執行它

~/.profile

後者產生一個新的 shell 進程,在其中建立別名,但隨後終止產生的 shell,使原始呼叫 shell 保持不變。

如果將腳本儲存為 ~/.profile,當您登出並再次登入時,它也會得到正確的來源。

相關內容