ESXi 6 の sh スクリプトからエイリアスを設定する

ESXi 6 の sh スクリプトからエイリアスを設定する

ESXi 6.7 ホストにエイリアスを設定するための簡単なスクリプトを作成しました。

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

スクリプトを実行すると、画面にエコーされたメッセージが表示されますが、エイリアスは設定されていません。ただし、コマンド プロンプトから alias コマンドを実行すると、正常に動作します。

スクリプトからエイリアスを設定する方法を説明してくれる人はいますか?

答え1

私の場合、これは期待どおりに動作します。次のようにスクリプトをドットソースするようにしてください。

. ~/.profile

このように実行する代わりに

~/.profile

後者は、エイリアスが作成される新しいシェル プロセスを生成しますが、生成されたシェルを終了し、元の呼び出しシェルは変更されません。

スクリプトを ~/.profile として保存すると、ログオフして再度ログインしたときにも適切にソース化されます。

関連情報