Users
如何更改使用者並保持目前位置?
我想知道如何在一個命令中切換到另一個使用者(在我的情況下通常是
root
),並且仍然保持在更改之前的相同位置。我通常這樣做,不幸的是採取了很多步驟:
user1@m:~/loc1/loc2$ pwd /home/user1/loc1/loc2 user1@m:~/loc1/loc2$ su - Password: root@m:~# cd /home/user1/loc1/loc2 root@m:/home/user1/loc1/loc2#
我正在尋找類似的東西:
user1@m:~/loc1/loc2$ su - && ...
或類似的,這會給我這個結果:
root@m:/home/user1/loc1/loc2#
根據手冊,
-
和-l
都是相同的選項。
-l
模擬完整登錄。除 HOME、SHELL、PATH、TERM 和 USER 之外的環境將被丟棄。HOME 和 SHELL 修改如上。USER 設置為目標登錄。PATH 設置為“/bin:/usr/bin”。TERM 是從您目前的環境中導入的。呼叫的 shell 是目標登錄的,su 會將目錄更改為目標登錄的主目錄。
-
(無字母)同-l
。通過不指定
-l
or-
,目錄不會改變。
最簡單的解決方案:
user1@m:~/loc1/loc2$ su root
甚至(感謝@Christopher):
user1@m:~/loc1/loc2$ su