当我尝试使用命令安装软件包(例如nsnake)时 sudo apt-get install nsnake &
,该过程会立即停止。我可以将它带到前台并输入我的 sudo 密码,暂停它(使用Ctrl- Z),然后再次将其发送回后台。但是外壳会立即暂停该过程,例如,
katriel@caseylaptop:~$ bg
[2]+ sudo apt-get install nsnake &
[2]+ Stopped sudo apt-get install nsnake
Run Code Online (Sandbox Code Playgroud)
是否可以在后台安装软件包?我可能想在通过 SSH 连接的计算机上安装大型软件包时执行此操作。
kir*_*iri 30
是的,当然。
用它周围的奇特事物执行你的apt-get
命令
sudo bash -c 'apt-get -y install guake >/dev/null 2>&1 & disown'
Run Code Online (Sandbox Code Playgroud)
部分说明:
该sudo bash -c
部件产生一个新bash
进程,并apt-get -y install guake >/dev/null 2>&1 & disown
在该新外壳内运行。
然后在新的子 shell 中运行这些命令:
apt-get -y install guake
:您要运行的主要 apt-get 命令。
>/dev/null 2>&1
管道 stdout 和 stderr 到 /dev/null。& disown
否认之前的作业并退出子shell。添加&符号&
以运行任何程序并在程序运行时返回提示,例如
sudo apt-get -y install nsnake &
Run Code Online (Sandbox Code Playgroud)
但是,您可能会在 shell 中定期弹出某些事件和通知。要隐藏这些事件,请将它们通过管道传输到 STDOUT
sudo apt-get -y install nsnake >/dev/null &
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12925 次 |
最近记录: |