我是bash中的noob。
我想创建一个检查,所以如果1路径已经死了我想得到警告信息,超过1路下行严重,没有死路径 - 一切都可以
我会使用此命令及其输出:
powermt display dev=all
CHECK_DEGRADED=/usr/local/bin/sudo /sbin/powermt display | grep dead| wc -l
if [ $CHECK_DEGRADED -eq 1 ]; then
status=1
statustxt=WARNING
else if [ $CHECK_DEGRADED -gt 1 ]; then
status=2
statustxt=CRITICAL
else
status=0
statustxt=OK
fi
输出应该类似于:Path处于$ statustxt状态
答案 0 :(得分:0)
首先欢迎使用Stack Overflow。
这样的事应该没问题:
deadPath=0
declare -a pathArray=(/usr/local/bin/sudo /sbin/powermt display)
for i in "${pathArray[@]}"
do
if [ -d "$i" ]; then
# Will enter here if path exists
echo "Path $i Exists"
else
deadPath=$[$deadPath+1]
fi
done
if (( deadPath > 1 )); then
echo "Critical"
exit 2
elif (( deadPath == 1 )); then
echo "Warning"
exit 1
else
echo "OK"
exit 0
fi