我通常在上学之前开始下载。
在完成特定任务后,我应该使用哪个命令自动进行必要的保存并关闭计算机?
(例如,在安装更新后或下载大文件之后。)
我也交叉张贴在askubuntu上。
我通常在上学之前开始下载。
在完成特定任务后,我应该使用哪个命令自动进行必要的保存并关闭计算机?
(例如,在安装更新后或下载大文件之后。)
我也交叉张贴在askubuntu上。
Answers:
这取决于您开始的任务。如果是某些命令行工具,则可以直接运行halt
或shutdown -h now
:
wget http://..../somelargefile; halt
- halt
将在之后执行wget
wget http://..../somelargefile && halt
- halt
如果wget
没有返回错误将被执行
wget http://..../somelargefile || halt
- halt
如果wget
返回错误将被执行
替代方法是使用kshutdown
-在此应用中,您可以指定应执行的操作(重新启动/关机/休眠/等或命令执行)以及何时(在一段时间后或另一个应用程序退出时)。如果要使用此工具,则需要选择正确的过程-一些更新实用程序启动了几个子过程。
shutdown
没有任何等待实际事件的方法。
每个进程都有一个根据proc
文件系统中其进程ID(pid)命名的目录。因此,您可以通过检查特定目录的目录是否重复存在来等待其终止。
您可以使用此命令在进程终止后执行系统关闭,如下所示(用pid替换2296以等待):
su -c 'while [[ -d /proc/2296 ]]; do sleep 1; done; poweroff'
好处:
sudo
-password提示)。缺点:
ps
在那个终端上打开了该终端,则应该可以帮助您找到CMD的PID。如果该进程是/正在另一个终端中,则通过grep将ps输出的所有内容通过grep过滤以过滤您的命令,应该可以帮助您找到它ps -elf | grep <command_related_word>
pgrep
aka process grep检查我的答案...
如果要监视已经启动的进程,可以在shell中执行以下操作:
# while pgrep &>/dev/null -f process_name; do sleep 60; done; shutdown -h now
shutdown
时间等待;无需为此使用kshutdown。