shell脚本里面,运行的上一条命令是启动另一个一个脚本要怎么读取其进程IP
时间: 2024-02-05 20:11:15 浏览: 169
可以使用以下命令来获取进程的IP地址:
```
ps -ef | grep script_name.sh | grep -v grep | awk '{print $2}' | xargs lsof -iTCP -sTCP:ESTABLISHED -a -p | awk '{print $9}' | cut -d":" -f1 | uniq
```
其中,`script_name.sh`是你要获取进程的脚本名称。
解释一下上述命令:
- `ps -ef | grep script_name.sh | grep -v grep | awk '{print $2}'`:获取脚本进程的PID。
- `xargs lsof -iTCP -sTCP:ESTABLISHED -a -p`:通过PID获取该进程打开的TCP连接。
- `awk '{print $9}'`:提取TCP连接的IP地址和端口号。
- `cut -d":" -f1`:只保留IP地址部分。
- `uniq`:去重,只输出唯一的IP地址。
注意,这个命令只能获取已建立连接的IP地址,如果脚本还没有建立连接,则无法获取其IP地址。
阅读全文