shell获取不存在进程pid并打印出来
时间: 2023-06-06 10:08:07 浏览: 57
对于你的问题,我可以给出以下思路:
1. 使用ps命令输出当前所有进程的信息
2. 使用grep命令查找指定进程名的进程信息
3. 使用awk命令提取进程ID
具体命令如下:
ps aux | grep [进程名] | awk '{print $2}'
其中,[进程名]为你要查找的进程名,这个命令会输出该进程的PID。如果该进程不存在,则不会有任何输出。
相关问题
shell执行一个进程时同时获取它的进程号
在Shell中,你可以使用特殊变量`$!`来获取最后一个后台进程的PID(进程ID)。这个变量会保存最后一个在后台执行的命令的进程ID。
以下是一个示例:
```shell
#!/bin/bash
your_command & # 执行你的命令,并使其在后台运行
pid=$! # 获取最后一个后台进程的PID
echo "进程号为: $pid"
```
在这个示例中,`your_command`是你要执行的命令,通过在命令末尾添加&,使其在后台运行。然后使用`$!`获取该后台进程的PID,并将其存储在变量`pid`中。最后,使用`echo`命令打印出进程号。
通过以上方式,你可以在Shell脚本中同时执行一个进程,并获取它的进程号。
shell脚本启动时输出进程的pid号
你可以在shell脚本中使用特殊变量`$$`来获取当前进程的PID号。可以使用`echo $$`命令来输出该PID号。例如:
```shell
#!/bin/bash
echo "My PID is $$"
```
当你运行该脚本时,它会打印出类似于以下内容的输出:
```
My PID is 1234
```
其中1234是当前进程的PID号。