以下是一个 Bash 脚本示例,它将检查当前正在运行的所有 Python 进程,并列出具有相同路径的任何重复实例。
#!/bin/bash
# 获取所有 Python 进程的信息
procs=$(ps aux | grep python)
# 用 awk 命令分离路径
procs=$(echo "$procs" | awk '{print $11}')
# 将独特路径添加到一个数组中
declare -A unique_procs
for proc in $procs; do
# 检查路径是否已经在数组中
if [[ -z ${unique_procs[$proc]} ]]; then
unique_procs[$proc]=1
else
unique_procs[$proc]=$((${unique_procs[$proc]}+1))
fi
done
# 列出所有重复的 Python 实例
for proc in "${!unique_procs[@]}"; do
if [[ ${unique_procs[$proc]} -gt 1 ]]; then
echo "$proc (${unique_procs[$proc]} instances)"
fi
done
该脚本将输出具有重复路径的 Python 实例的数量。例如,如果有两个 Python 进程都在 /usr/bin/python 下运行,则输出将如下所示:
/usr/bin/python (2 instances)