我正在編寫一個shell腳本,其中在一個條件中,腳本將像su - xxx那樣更改用戶,然後它必須執行一些命令/腳本,並且應該保持登錄到該用戶/會話以進行用戶交互。一旦用戶輸入退出,它應該退出該會話並返回到腳本。在shell腳本中使用su
我曾嘗試使用su - xxx -c「命令」,但它會在執行命令後終止會話。我想在命令執行後保持該會話,用戶應該手動退出(鍵入exit)以關閉該會話並返回到腳本。
任何暗示將做..
在此先感謝....對你的建議..
我正在編寫一個shell腳本,其中在一個條件中,腳本將像su - xxx那樣更改用戶,然後它必須執行一些命令/腳本,並且應該保持登錄到該用戶/會話以進行用戶交互。一旦用戶輸入退出,它應該退出該會話並返回到腳本。在shell腳本中使用su
我曾嘗試使用su - xxx -c「命令」,但它會在執行命令後終止會話。我想在命令執行後保持該會話,用戶應該手動退出(鍵入exit)以關閉該會話並返回到腳本。
任何暗示將做..
在此先感謝....對你的建議..
什麼是「應該留登錄到用戶交互的用戶/會話」是什麼意思?你想給用戶一個正常的shell提示符,以便他們可以輸入命令嗎?
要做到這一點,您需要單獨啓動一個shell。嘗試:
#!/bin/bash
echo Doing stuff...
echo Starting shell. Type "exit" when done.
sudo su - -c bash
echo Thanks for playing!
這將啓動一個子shell用戶。如果子shell終止(通常在用戶鍵入exit/Ctrl-D時),腳本將繼續。
非常感謝你的回答。 – srikant 2010-08-18 05:49:19
我想導出一些ailas到新的會話,有沒有辦法做到這一點,我已經嘗試別名-x但不工作。 – srikant 2010-08-18 08:54:45