腳本切換用戶
許可權不夠
1、你看下你的腳本有沒有讀和執行的許可權,用一下命令查看:
ls -trl /home/aaaaa/test.sh
看看出來的 -rw-r--r--. 1 root root 28757 12月 12 09:28 install.log 具體是什麼
就像我上賣弄讀取出來的這個 install.log 文件一樣,他的許可權是 對root用戶 有讀和修改的許可權,對root用戶組只有 讀 的許可權,對其他念李局用戶也只有讀的擾枯許可權,那麼這個時候 你用其他用戶執行,肯定執行不了;
2、看看切換的用戶有沒有讀和執行該腳本的許可權;
關於許可權這邊說就太了多了,如果不懂的話建議自己下去看看;
有個最簡單的方法 直接 chmod 777 aaaa.sh 給予aaaa.sh這個腳本所有許可權,然後再切換仔讓用戶後,就可以直接執行了 bash aaaa.sh
㈡ shell腳本,我從root用戶切換到普通用戶之後,新定義了一個變數,但列印變數的值是空的,怎麼回事
在$前面加上轉義, echo ${Result1} 替換成echo ${Result1}
這個問題跟root用戶切換到普通用戶什麼的沒關系,而是因為你在用here-document的時候,並沒有用雙引號或單引號將!引用起來,或用轉義符將here-document中的元字元$轉義,這時候here-document中的文本將被擴展,即參數替換被啟用。
你運行一下這段腳本,看看Result1值的變化,就會明白了
#!/bin/bash
Result1="001"
echo "Parameter substitution is enabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
echo "Parameter substitution is disabled"
bash<<EOF
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
bash<<'EOF'
if [ "1" = "1" ];
then
Result1="111";
echo ${Result1};
echo "wr";
fi
EOF
㈢ ubuntu腳本中實現切換到root用戶執行命令 執行完在切換回來普通用戶
想從root用戶切回user用戶只需執行命令:su user (user是你自己安裝時候的用戶名),或是直接輸入exit,也可Ctrl+D組合鍵推出
㈣ linux自動巡檢腳本之用戶切換後的命令執行
切換的時候直接寫上要執行的巡檢腳本 並把結果發送的腳本一起寫上
例如:su - aaaa -s /bin/bash shell.sh
切到aaaa用戶用bash環境執行shell.sh腳本
其他自由發揮吧
㈤ SHELL腳本切換用戶需輸入密碼
先確認一下su
-c
能否解決巧慶問題,語法
su
-
-c
以指定派寬缺用戶執行命令
[root@fw98
/]#
whoami
root
[root@fw98
/]#
su
-
mao
-c
whoami
mao
不能滿足需求的話,可以用expect,我的環境上沒有expect,不能幫你試了,大致是下面的感覺,詳細你網路查一下
#!/usr/bin/expect
su
-
mao
#你要執行的命令
expect
"Password:"
#執行後終端回顯的交互信息
send
"admin_123\r"
#當終端出現上面的交互詳細後,模擬鍵盤輸入的內容
#此例,執行su
-
mao
切換mao用戶,終端提示輸入密碼後,模擬鍵盤輸塵辯入mao用戶的密碼
㈥ unix腳本中如何切換用戶
這個得用 sudo 命令。他在切換用戶後,執行完指定命令後自動切回原用戶。
echo start
sudo -u user ./some.sh
#執行多個命令把命令寫進腳本里。
echo end
㈦ Steam快速切換賬號,無需軟體
購買游戲時,我擁有多個Steam賬號,還會在俄區、阿根廷等地打折時購買游戲。
然而,Steam每次只能自動登錄一個賬號,換賬號時還需重新輸入密碼或安全碼,非常繁瑣。因此,我希望能實現不同賬號的自動切換。
在網上尋找了許多解決方案,但大多是第三方軟體,擔心賬號信息會被上傳至網路,於是決定自己編寫腳本解決問題,既安全又便捷。
結合網路資料,我編寫了以下bat腳本。其原理是,Steam的默認登錄賬號是存儲在注冊表中的,然後根據注冊表中的賬號信息去Steam/config/loginusers.vdf文件中查找對應賬號信息。因此,切換用戶時,只需修改注冊表中的賬號信息即可。
以下是實操步驟:
1.新建文件Stream.bat,使用文本編輯器打開並輸入以下代碼。
2.將代碼中10-12行的Account1/Account2/Account3替換為自己的賬號,即可實現自動切換賬號。
3.若擁有多個賬號,可自行添加if行。
PS:請注意,切換的賬號必須之前登錄過,否則在Steam/config/loginusers.vdf文件中不會有記錄,切換後的第一次登錄仍需輸入密碼。