相关疑难解决方法(0)

如何在shell if语句中表示多个条件?

我想代表这样的多个条件:

if [ ( $g -eq 1 -a "$c" = "123" ) -o ( $g -eq 2 -a "$c" = "456" ) ]   
then  
    echo abc;  
else  
    echo efg;   
fi  
Run Code Online (Sandbox Code Playgroud)

但是当我执行脚本时,它会显示出来

syntax error at line 15: `[' unexpected, 
Run Code Online (Sandbox Code Playgroud)

第15行显示是否....

这种情况怎么了?我猜这有点不对劲().

unix bash shell

288
推荐指数
6
解决办法
77万
查看次数

if [](方括号)中"[:太多参数"错误的含义

我找不到任何一个简单直接的资源,用于解释以下BASH shell错误的含义和修复,所以我发布了我在研究之后发现的内容.

错误:

-bash: [: too many arguments
Run Code Online (Sandbox Code Playgroud)

Google友好版: bash open square bracket colon too many arguments.

上下文:单个方括号中的if条件,带有一个简单的比较运算符,如equals,大于等,例如:

VARIABLE=$(/some/command);
if [ $VARIABLE == 0 ]; then
  # some action
fi 
Run Code Online (Sandbox Code Playgroud)

bash arguments if-statement

185
推荐指数
5
解决办法
22万
查看次数

在Bash中使用多个表达式if语句

我想重新创建这样的东西

if ( arg1 || arg2 || arg 3) {}
Run Code Online (Sandbox Code Playgroud)

我到目前为止,但我收到以下错误

line 11: [.: command not found

if [ $char == $';' -o $char == $'\\' -o $char == $'\'' ]
then ...
Run Code Online (Sandbox Code Playgroud)

我尝试了不同的方法,但似乎没有人尝试过我试过的一些方法

syntax bash if-statement

13
推荐指数
2
解决办法
2万
查看次数

标签 统计

bash ×3

if-statement ×2

arguments ×1

shell ×1

syntax ×1

unix ×1