笔记笔记
  • Home
  • AI&ML
  • Example
  • Zoo
  • 关于
⌘ K
Linux
Linux 常用命令
宝塔 反向代理
用宝塔 Supervisor 管理器 启动 Workerman
Workerman wss 宝塔 Apache2.4 配置
linux shell 执行长时间程序挂到后台
Linux 笔记
macOS
Android
Ubuntu
Debian
Kali Linux
Kylin Linux
开源掌机
记录
最后更新时间:
Copyright © 2023-2024 | Powered by dumi | GuoDapeng | 冀ICP备20004032号-1 | 冀公网安备 冀公网安备 13024002000293号

TABLE OF CONTENTS

‌
‌
‌
‌

linux shell 执行长时间程序挂到后台

shell 执行运行时间很长的程序时,尤其是使用云服务器的时候,如果不小心断开了 ssh,可能正在进行的程序就直接结束了。

运行了个很长时间的脚本。我这个大概需要 20 个小时。

php copy.php

这时候我们不想结束这个脚本,但是也不想在这里傻等。 可以在这个 shell 按 Ctrl z,这个时候这个正在运行的程序就挂起到后台了。但是现在关闭 ssh 肯定会杀死它的。

^Z
[1]+ 已停止 php copy.php

这时候我们可以在后台先让它运行着。 % 后面的数字就是 [ ] 里面的数字。jobs 可以看一看挂起的程序

$ bg %1
[1]+ php copy.php &
$ jobs
[1]+ 运行中 php copy.php &

之后用 disown 就可以把它给系统的后台了。

disown -h %1

之后用 top 或 htop 观察它吧。

PS: bg 相对的还有 fg,就是 挂起到后台的程序显示到前台。