启动器启动一串命令

启动器启动一串命令

我正在尝试为 Cairo Dock 制作一个自定义启动器,单击时,打开一个终端窗口并sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove连续执行。

到目前为止,我所拥有的如下:

xterm -e sudo apt-get update && xterm -e sudo apt-get upgrade && xterm -e sudo apt autoremove

不过,我必须说一下长的密码输入三次,因为它会为每个命令打开三个单独的终端窗口。运行xterm -e sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove不起作用,因为它是三个单独的命令,而 xterm 不知道我想要一切-e在执行后相同的终端窗口。

除此之外,还有什么其他方法&&可以将其定义为一个命令而不是三个命令吗?我是否必须编写脚本或其他东西(我还没有使用脚本的经验)?

我正在使用 Terminix 执行原始命令。

答案1

您只需添加一些引号:

xterm -e "sudo apt-get update && sudo apt-get upgrade && sudo apt autoremove"

我还喜欢添加到我的更新单行中,并在我的文件中sudo apt clean设置仅使用以下命令执行该行:alias~/.bash_aliasesupdate

alias update='sudo apt update && sudo apt upgrade && sudo apt autoremove && sudo apt clean'

或者如果你想要一个单独的xterm

alias update='xterm -e "sudo apt update && sudo apt upgrade && sudo apt autoremove && sudo apt clean"'

如果希望xterm执行命令后保持打开状态,请添加到命令链的末尾或在之前;bash添加选项。-hold-e

答案2

按照以下方式使用该命令:

xterm -e sudo bash -c "apt update && apt upgrade && apt autoremove"

这样您只需输入一次密码。

相关内容