Shell 脚本中后台启动服务& 与 nohup
- 最近工作中遇到在shell脚本中启动服务并让服务在后台运行,同时不影响shell脚本向下执行的场景。进行了一些调查,实践,借鉴一些网上的资源进行一个个人的总结,方便以后复习使用。
&
- 在shell脚本中,需要吧一个任务放在后台运行的时候,通常会使用 & 符号
servicecommand &
# 表示服务启动并在后台运行
- 此时主进程,即shell脚本继续向下执行,子进程在后台启动运行,
- 另外有这样的写法
nohup servicecommand &
nohup
- 英文全程,no hang up 不挂起,用于在系统后台不挂断的运行命令,退出终端不会影响程序的运行
- nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向