[英]How to check if the command was executed in bash script and do not execute this command again?
[英]Bash: how to check if a command executed in time
我正在尝试在要在终端中执行的 bash 脚本中执行此命令expressvpn connect
。 问题是有时连接时间太长,我想确保它不会花费太多时间。 我试过这个命令
some_command
if [ $? -eq 0 ]; then
echo OK
else
echo FAIL
fi
但这是为了检查命令是否被执行,而我想确保如果它没有在 10 秒内执行,那么脚本必须停止并从头开始。 我怎么做? 这是完整的代码
#!/bin/bash
expressvpn disconnect
while (0<1); do
expressvpn connect smart location
xdg-open http://link
sleep 15
xdotool key Control_L+w
expressvpn disconnect
expressvpn refresh
done
我希望我很清楚。 提前致谢。
希望对你有帮助。
timeout 15s expressvpn connect smart location>/dev/null &
你可以简单地执行这个:
timeout 15s expressvpn connect smart location
case "$?" in
0) echo "OK" ;;
124) echo "TIMEOUT" ;;
*) echo "FAIL" ;;
esac
从人超时
退出状态:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.