我是bash新手,我一直在try 否定以下命令:

wget -q --tries=10 --timeout=20 --spider http://google.com
if [[ $? -eq 0 ]]; then
        echo "Sorry you are Offline"
        exit 1

如果连接到internet,则此if条件返回true.我希望它以另一种方式发生,但把!放在任何地方似乎都不起作用.

推荐答案

你可以 Select :

if [[ $? -ne 0 ]]; then       # -ne: not equal

if ! [[ $? -eq 0 ]]; then     # -eq: equal

if [[ ! $? -eq 0 ]]; then

!分别反转以下表达式的返回.

Linux相关问答推荐

Linux-如何区分目录中名称相同但扩展名不同的所有文件

变量在vim中打印良好,但在bashshell中打印不好,这怎么可能发生?

Postfix 连接到 domain.com[74.208.61.85]:587: 连接被 dovecot、opendkim 和 SSL 拒绝

linux shell 脚本获取文件夹中

在 linux 中插入带有 sed 命令的文件的行

Linux 如何将主机文件作为用户的输入并将其调用到脚本中

在 bash 中查找匹配多个模式的文件

Linux/Unix 手册页语法约定

如何在 Linux 中设置目录大小限制?

如何在 linux 'screen' 中搜索任何单词

如何获取 CPU 使用率

Linux中没有X.org的OpenGL

如何在不重新打印的情况下更新终端中的打印消息

从命令行导入 PostgreSQL CSV

如何使用 C++ 在 Linux 中获取总 CPU 使用率

linux perf:如何解释和查找热点

System.currentTimeMillis 是否总是返回一个值 >= 以前的调用?

如何在 UNIX 中将字符串转换为整数

如何限制我网站的 API 用户?

Ionic android 构建错误 - 找不到ANDROID_HOME环境变量