sudo suを実行し、後でディレクトリをどのように変更できますか?

sudo suを実行し、後でディレクトリをどのように変更できますか?

次のようにエイリアスを作成したいと思います。

alias userYYY='sudo su userYYY; cd /a/path/that/only/userYYY/has/access'

次に、コマンドラインでsudoユーザーを使用してログインし、シェルがuserYYY今。userYYYpwd/a/path/that/only/userYYY/has/access

どうすればいいですか?これはuserYYYいくつかのプロセスを実行するものであり、そのホームに何かが必要です。だから私は次のように$ HOMEを変更してみました。

sudo usermod -m -d /a/path/that/only/userYYY/has/access userYYY 

その後、シェルとsudoerファイルで実行しましたsudo su userYYY。しかし、それはうまくいきませんでした。正しく機能した唯一の方法は、元のシェル内でsudo su -l userYYYY新しいbash()を開くことでした。-bash-4.1$ ....

要約すると、私が望むのは、シェルに2行を書かないことです。

sudo su userYYY
cd /a/path/that/only/userYYY/has/access

どんなアイデアがありますか?

ベストアンサー1

alias userYYY='sudo su userYYY -c "cd /a/path/that/only/userYYY/has/access; /bin/bash"'

おすすめ記事