命令行开启常驻服务小结
最近玩 Node js ,想常驻一个服务, node index.js 。直接再命令行这样玩的话,当你 ctrl + c 或者
关闭命令行是,服务随着关闭结束。
那怎么操作能让他在后台常驻运行呢?常驻之后,我又能怎么手动结束这个进程呢?
1. 常驻后台:
nohup 指令 &
使用 nohub + 对应需要执行的指令 + & 就能实现后台常驻。
例如上面的 node index.js 需要常驻的话,就应该这样写:
nohub node index.js &
这个时候,命令行中会给你返回出进程 id :
[1] 83281
appending output to nohup.out
- 结束进程
kill -9 83281
[1]+ 83281 killednohup node index.js
接着再重复上面的开始指令。
- 查看端口对应进程
lsof -i:80node83281lovejjfg22uIPv6 0x7bc41b53c97391cf0t0TCP *:http (LISTEN)
ok ,再重复操作步骤2 ,完成。
到这里,内容算完成了。
异常问题,如果在 zsh 中出现以下错误:
zsh: you have running jobs
那么在 nohup 指令 & 指令最后再添加一个 !。 像这样:
nohup 指令 &!
思来想去总觉这一对操作太麻烦了,简单用一下都挺累的。各种指令需要切换,难道就没有大佬解决这个问题吗?
哈哈 , pm2 解决你所有烦恼。
- pm2 开启服务:
pm2 start index.js --name index_debug
- 查看后台服务列表
通过以上指令,你就开启了 index.js 的服务。如何查看已开启的服务呢?
pm2 list
文章图片
image.png 这里的 name index_debug 就是这个刚刚我们开启指令所指定的 name 。 最后, 还有一个 watching ,这个是啥意思呢?
- 自动重启
pm2 start index.js --name index_debug --watch
- 手动重启
当然,这只是入门的基本操作指令。例如 watch 是否需要过滤某些文件修改等。详情请阅读请继续看官方文档。
参考链接:
https://www.jianshu.com/p/7e60a2d76aa5
https://www.cnblogs.com/chyingp/p/pm2-documentation.html
https://www.cnblogs.com/sparkdev/p/6659629.html
推荐阅读
- 定投,开启个人品牌之路
- 不抱怨,开启美好人生的最快捷径
- 用Go构建区块链——3.持久化和命令行
- D77+1组棉布+《干法》读书笔记1
- 解放全球宝妈,宝倍爽发布“纸尿裤3.0”开启母婴智能新生活
- ubuntu开机默认进入命令行模式/用户图形界面
- Xcode|Xcode 11.2 开启推送按钮
- 命令行上传小程序版本至微信后台
- iOS|iOS 图片裁剪
- 2019-12-21 Linux常用命令行操作