[linux]bash -x run.sh 这个命令如何设置 ubuntu 为后台执行
在 Ubuntu 中,如果你希望将一个脚本以后台进程的方式运行,可以使用 nohup
命令和 &
符号。这样可以使脚本在你退出终端后仍然继续运行。
使用 nohup
命令以后台执行
使用
nohup
运行脚本:nohup bash -x run.sh &
nohup
允许你在退出终端后继续运行程序。bash -x run.sh
会在执行时输出每个命令的详细调试信息。&
符号将命令放入后台执行。
查看输出:
默认情况下,nohup
会将输出重定向到nohup.out
文件。在相同的目录下,你可以查看该文件来获取脚本执行的输出:cat nohup.out
使用
jobs
和bg
管理后台任务:- 如果你已经在前台运行了脚本,并希望将其放到后台,可以按下
Ctrl + Z
停止进程,然后使用:bg
- 这将把最近的停止进程放入后台。
- 你也可以使用
jobs
查看后台进程的列表。
- 如果你已经在前台运行了脚本,并希望将其放到后台,可以按下
使用
disown
:
如果你希望在将进程放入后台后,又不想它与当前 Shell 关联,可以使用:disown
完整示例
以下是一个完整的示例命令,将脚本以调试模式在后台运行,并保持运行:
nohup bash -x run.sh > output.log 2>&1 &
这个命令的意思是:
> output.log
: 将标准输出重定向到output.log
文件。2>&1
: 将标准错误输出 (file descriptor 2) 也重定向到标准输出 (file descriptor 1), 也就是output.log
文件。&
: 将命令放入后台执行。
这样你就可以在终端继续使用其他命令,同时脚本在后台运行。
本作品采用《CC 协议》,转载必须注明作者和本文链接