Bash
我怎樣才能 sudo su 並在之後更改目錄?
我想創建一個別名來做這樣的事情:
alias userYYY='sudo su userYYY; cd /a/path/that/only/userYYY/has/access'
所以然後從我的命令行,我用 sudo 使用者登錄,我想輸入別名
userYYY
,以便我的 shell 現在用userYYY
和pwd
is登錄/a/path/that/only/userYYY/has/access
。我怎樣才能做到這一點?這
userYYY
是為了執行一些程序,它的home裡面肯定有什麼東西。因此,我嘗試使用以下方法更改其 $HOME:sudo usermod -m -d /a/path/that/only/userYYY/has/access userYYY
然後從我的 shell 和我的 sudoer 文件中我做了
sudo su userYYY
。但這沒有用。唯一有效的是sudo su -l userYYYY
,它在我原來的 shell (-bash-4.1$ ....
) 中打開了一個新的 bash。總之,我想要的是簡單地避免在我的 shell 中寫兩行:
sudo su userYYY cd /a/path/that/only/userYYY/has/access
有任何想法嗎?
alias userYYY='sudo su userYYY -c "cd /a/path/that/only/userYYY/has/access; /bin/bash"'
一種選擇是編輯
~/.bashrc
目標使用者,並在cd
那裡添加:cd /a/path/that/only/userYYY/has/access