关于 shell 中的 if-else 的帮助

Sou*_*rav 6 command-line scripts 11.04

请帮我写一个外壳采用编程if else,全部采用不可能性的代码[[ ]][ ](( ))
我试过了,但它不起作用(你可以检查我之前的问题算术二元运算符 -gt, -lt 给出错误但在 shell 脚本中工作)。

这是C版本:

int i = 10, n = 20;

if (i < n)
    printf("i smaller");
else if (i > n)
    printf("n smaller");
else
    printf("same");
Run Code Online (Sandbox Code Playgroud)

Den*_*rko 12

关于什么

#!/bin/sh

i=1
n=2

if [ "$i" -gt "$n" ]; then 
    echo "i is bigger" 
elif [ "$n" -gt "$i" ]; then 
    echo "n is bigger" 
else 
    echo "same" 
fi
Run Code Online (Sandbox Code Playgroud)

第二...

#!/bin/bash

i=1
n=2

if ((i > n)) ; then 
    echo "i is bigger" 
elif ((i < n)); then
    echo "n is bigger"
else
    echo "same"
fi
Run Code Online (Sandbox Code Playgroud)

还有最后一个……

#!/bin/bash

i=1
n=2

if [[ $i -gt $n ]]; then 
    echo "i is bigger"
elif [[ $i -lt $n ]];  then
    echo "n is bigger"
else
    echo "same"
fi
Run Code Online (Sandbox Code Playgroud)