【发布时间】:2020-07-08 11:28:29
【问题描述】:
我想在 bash 中启动一个 hello.sh 脚本,它可以做很多事情(在文件中写入,在屏幕上打印),但我想将它的 PID 转储到文件中,但我想在相同的命令行,因为我可以使用同一个文件有不同的进程(许多 hello.sh 启动)。
所以,我想要类似(伪代码):sh hello.sh > get_pid > pid_to_log。谢谢。
【问题讨论】:
我想在 bash 中启动一个 hello.sh 脚本,它可以做很多事情(在文件中写入,在屏幕上打印),但我想将它的 PID 转储到文件中,但我想在相同的命令行,因为我可以使用同一个文件有不同的进程(许多 hello.sh 启动)。
所以,我想要类似(伪代码):sh hello.sh > get_pid > pid_to_log。谢谢。
【问题讨论】:
你可以这样做
./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
【讨论】: