簡體   English   中英

登錄后運行 bash 腳本

[英]Run bash script after login

我有一個帶有一系列鞭尾菜單的 bash 腳本,允許用戶設置他們的新系統,即 Ubuntu 服務器,沒有 GUI,只有 CLI(它將是一個虛擬機映像)。

我已經通過編輯/etc/default/grub/etc/init/tty1.conf強制 root 登錄,因此用戶被直接放入 root 命令提示符。 從那里,用戶必須輸入./whiptail.sh來啟動腳本並獲得whiptail 提示以進一步設置他們的主機。

現在,我希望我的腳本成為登錄發生后出現的內容,而不是將用戶拖放到命令提示符下。 我該怎么做?

bash所有交互會話都會讀取初始化文件~/.bashrc

所以你可以在root.bashrc的末尾添加腳本,即/root/.bashrc ,假設腳本是可執行的:

echo '/path/to/whiptail.sh' >>/root/.bashrc

現在,當root打開一個新的交互式 shell 時,腳本將始終運行。 如果您只想在登錄時運行,則不是所有交互式會話都應該使用~/.bash_profile / ~/.bash_login / ~/.profile (按順序使用的第一個)。

如果您希望它是全局的,請將您的腳本添加到

/etc/profile 

如果您希望它是特定用戶的,請將您的腳本添加到

/home/$USER/.profile

考慮在此處對原始答案進行投票: https ://unix.stackexchange.com/a/56088/343022

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM