首先我要声明,在剧本写作方面,我几乎完全是一个新手。
无论如何,我希望创建一个脚本,在 Ubuntu 的 GUI 环境中打开一个终端,并在打开终端时显示脚本中运行的其他命令的输出。
这样做的原因是我希望获取脚本,将其放入登录时运行脚本的目录中,并让其打开终端,运行我的常规更新脚本,然后保持终端打开以允许我继续。
我这样做的原因基本上是为了获得更多经验,并且我想自动执行每次登录时要执行的一些操作。
答案1
我想运行 1 个脚本。基本上,我想在登录时自动打开终端,然后运行 apt-get update/upgrade/dist-upgrade,并在该屏幕上显示输出。就这样。
确保您的脚本是可执行的,并将此命令添加到启动应用程序:
gnome-terminal -e 'bash -c "sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade; exec bash"'
这将打开gnome-terminal
,它将启动一个非交互式bash
shell(它将运行sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
),稍后将用交互式 shell 替换当前 shell bash
。
如果您已经sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
在脚本中,那么将启动应用程序设置为启动脚本并维护脚本而不是启动应用程序中的命令可能会更为实际:
gnome-terminal -e 'bash -c "/path/to/script.sh; exec bash"'
答案2
此命令也能完美运行:
xfce4-terminal -x /usr/bin/expect -c 'spawn /usr/bin/bash ; expect "$ " ; send "update" ; interact ; exit'
您需要检查 expect 是否在 bin 路径中。否则安装该包。