<分区>
所以我有一个包含 PID 列表的 .txt 文件,我想编写一个 shell 脚本来检查哪些 PID 处于事件状态。
我的 File.txt 看起来像-
10414
10491
10632
10636
10623
10639
我想逐行读取文件并检查该特定 PID 是否处于事件状态,如果不活动则仅从文件中删除该 PID。
<分区>
所以我有一个包含 PID 列表的 .txt 文件,我想编写一个 shell 脚本来检查哪些 PID 处于事件状态。
我的 File.txt 看起来像-
10414
10491
10632
10636
10623
10639
我想逐行读取文件并检查该特定 PID 是否处于事件状态,如果不活动则仅从文件中删除该 PID。
最佳答案
这里的inputFile
是包含pids
的源文件
awk 'NR==FNR{p[$1]=$1;next} $2 in p{print $2}' inputFile <(ps -eaf) >inputFile.tmp && mv inputFile.tmp inputFile
详细信息:
以下将打印当前正在运行的进程的 ps
结果,这些结果也存在于您的文件中。
awk 'NR==FNR{p[$1]=$1;next} $2 in p' inputFile <(ps -eaf)
以下将创建一个 tmp 存储并创建您想要的文件,其中仅包含正在运行的 pids。
>inputFile.tmp && mv inputFile.tmp inputFile
关于linux - 如何从包含 PID 列表的文件中检查进程是否处于事件状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48882005/