【问题标题】:Get the PID of a process launched in the same command line获取在同一命令行中启动的进程的 PID
【发布时间】:2020-07-08 11:28:29
【问题描述】:

我想在 bash 中启动一个 hello.sh 脚本,它可以做很多事情(在文件中写入,在屏幕上打印),但我想将它的 PID 转储到文件中,但我想在相同的命令行,因为我可以使用同一个文件有不同的进程(许多 hello.sh 启动)。

所以,我想要类似(伪代码):sh hello.sh > get_pid > pid_to_log。谢谢。

【问题讨论】:

    标签: bash pid


    【解决方案1】:

    你可以这样做

    ./myscript.sh & echo $! >> log.pid
    

    然后您将把您的 PID 存储在一个文件中。但也许您还需要存储日期和时间。

    ./sleep.sh & echo $! `date` >> log.pid
    

    例子

    $ more sleep.sh
    sleep 10
    $ ./sleep.sh & echo $! `date` >> log.pid
    [1] 9588
    $ ./sleep.sh & echo $! `date` >> log.pid
    [2] 9640
    $ ./sleep.sh & echo $! `date` >> log.pid
    [3] 9646
    $ cat log.pid
    9588 Wed Jul 8 14:03:19 CEST 2020
    9640 Wed Jul 8 14:03:22 CEST 2020
    9646 Wed Jul 8 14:03:23 CEST 2020
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-20
      • 1970-01-01
      • 1970-01-01
      • 2011-02-02
      • 1970-01-01
      • 2018-05-30
      相关资源
      最近更新 更多