0

这个:

while [[ $red -le 255 && $switch -eq 0 ]] || [[ $red -ge 0 && $switch -eq 1 ]]; do

在 OS X 下工作得很好,但我无法让它在 Ubuntu 中工作。我觉得这是我所缺少的非常基本的东西,但是在谷歌搜索之后我还没有找到解决方案。

错误是:

[[: not found

4

2 回答 2

2

/bin/shUbuntu 上的默认 shell 和替代品是dash不理解[[. 确保您正在运行脚本bash

于 2013-01-18T15:53:13.563 回答
1

听起来它可能没有使用bash. #!如果这是一个脚本并且文件顶部没有 hashbang ( ),请尝试将其添加为第一行:

#! /usr/bin/env bash

如果它不是脚本,请尝试找出您正在使用的 shell:

echo $SHELL

# or maybe this
ps | fgrep $$

如果不是bash,请先手动运行bash,然后重试。

于 2013-01-18T15:43:16.137 回答