Bash脚本检测NordVPN连接状态报错:STATUS: command not found
问题解决:NordVPN连接检测脚本报错处理
错误原因
脚本报错STATUS: command not found的核心问题是Bash变量赋值时等号两边不能有空格。你写的STATUS = "$(...)"会被Shell解析为执行STATUS命令,自然找不到该命令导致报错。
修正后的脚本
STATUS="$(nordvpn status | head -n 1)" printf "STATUS %s\n" "$STATUS" if [[ $STATUS == "Status: Disconnected" ]] then echo "Disconnected from VPN..." nordvpn connect Salt_Lake_City fi
额外优化建议
可以跳过变量存储,直接通过命令退出码判断状态,避免因nordvpn status输出格式变化导致匹配失效:
if nordvpn status | grep -q "Status: Disconnected"; then echo "Disconnected from VPN..." nordvpn connect Salt_Lake_City fi
内容的提问来源于stack exchange,提问作者grafeno30
相关产品推荐
相关产品推荐

