Linux 脚本判断 squeue 输出行数并执行条件命令
可以使用 wc -l 命令来统计输出的行数,并使用 if 语句判断行数的数量。以下是一个示例脚本:
#!/bin/bash
output=$(squeue) # 执行 squeue 命令并将输出保存到变量 output 中
line_count=$(echo '$output' | wc -l) # 统计 output 的行数
if [ '$line_count' -eq 1 ]; then
# 只有一行输出,执行接下来的命令
echo '只有一个作业运行'
# 执行其他命令
else
# 有两行或以上的输出,打印提示信息并退出脚本
echo '有作业运行'
exit 1
fi
在脚本中,首先使用 $(squeue) 执行 squeue 命令,并将输出保存到 output 变量中。然后,使用 $(echo '$output' | wc -l) 将 output 变量中的内容通过管道传递给 wc -l 命令,统计行数并保存到 line_count 变量中。
接下来,使用 if 语句判断 line_count 的值。如果 line_count 等于 1,则只有一行输出,执行接下来的命令。否则,打印提示信息并使用 exit 1 退出脚本。
你可以根据实际需求,在脚本的注释部分的 # 执行其他命令 处添加你希望执行的其他命令。
原文地址: https://www.cveoy.top/t/topic/o98f 著作权归作者所有。请勿转载和采集!