linux nohup 记录pid,nohup启动程序后如何获取进程号Pid

【需求背景】:在Linux上执行一个Matlab程序,多个用户在同一个账号下同时启动了多个Matlab程序。运行一段时间后 如果想终止其中的某个进行 需要kill掉,但是kill掉哪一个呢?利用Top指令显示的结果是:

PID USER … COMMAND

6853 jackey   …  /media/workOne/matlab/bin/glnxa64/MATLAB

通过COMMAND已经服务区分多个进程了,因而我们需要在启动进程时打出此进程号。比较笨的方法是自己拿纸笔来记录了,哈哈,执行nohup后会在终端输出给你的。而自动输出方法是什么呢?nohup后显示的pid既不是标准输出也不是标准错误输出,无论用2>还是1>都是无法获取的。那么我们可以通过另外一种方法进行记录:利用$!创建进程号的文件。

直接上示例(run.sh):

#!/bin/sh

ls test_jacoxu-* | (while

read line;

do

echo “Start to run the matlab file:”${line}

nohup ../matlab.ln $(date ‘+%Y-%m-%d_%H-%M-%S’)${line}.out&

touch $!”.pid”

done)

通过touch $!”.pid”就可以输出以当前进程号命名的文件啦.pid

======================== 吐槽Time ================================

最近调试CNN模型状态欠佳,又进入了一个低效模式,貌似假期来临前的状态就是等待放假。换一个思路,看看分布式吧

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值