# !/usr/bin/env python
# coding=utf-8
import subprocess
obj1 = subprocess.Popen("squeue | grep -E '^ +[0-9]'| awk '{print $1,$4}'", shell=True, stdout=subprocess.PIPE,stderr=subprocess.PIPE)
res1 = obj1.stdout.read().decode("UTF-8")
l = res1.split()
l1 = l[::2]
l2 = l[1::2]
obj2 = subprocess.Popen("sacct -X -j " + ",".join(l1) + "| grep -E '^[0-9]'| awk '{print $1}'",shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
res2 = obj2.stdout.read().decode("UTF-8")
t1 = set(res1.split())
t2 = set(res2.split())
t3 = t1 - t2
for i in t3:
for index, j in enumerate(l1):
if i == j:
print(j, l2[index])
python处理数据
最新推荐文章于 2024-10-16 17:48:16 发布
该Python脚本利用subprocess模块调用squeue和sacct命令,通过管道处理和grep、awk工具,获取并分析SLURM作业管理系统中的作业ID及其执行状态,用于监控集群资源使用情况。
摘要由CSDN通过智能技术生成