我正在尝试为 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_aliases
update
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"
这样您只需输入一次密码。