2016-08-18 134 views
3

我有一系列whiptail菜单的bash脚本,允许用户设置他们的新系统,这是Ubuntu服务器,没有GUI,只有CLI(它将成为虚拟机映像) 。登录后运行bash脚本

我已经通过编辑/etc/default/grub/etc/init/tty1.conf强制root登录,所以用户直接丢弃到root命令提示符。从那里用户必须输入./whiptail.sh才能启动脚本并获取whiptail提示以进一步设置其主机。

现在,我想让我的脚本成为登录后出现的内容,而不是将用户放到命令提示符下。我怎样才能做到这一点?

+0

将脚本放在'/ root/.bashrc'中 – heemayl

+0

方法简单@heemayl。让它成为答案! – Godzilla74

+0

不要把它放到.bashrc脚本会在每次有人用这个自定义的.bashrc打开一个bash会话时运行,不会为我工作,因为我使用zsh。 – agilob

回答

3

bash的所有交互式会话将读取初始化文件~/.bashrc

所以你可以在root.bashrc/root/.bashrc的末尾添加脚本,假设脚本是可执行的:

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

现在脚本将始终运行时root打开一个新的交互shell 。如果您只想在仅登录时运行,并非所有交互式会话都应使用~/.bash_profile/~/.bash_login/~/.profile(订单后的第一个)。