android中的shell脚本给出了[:not found

Jee*_*tel 3 linux shell android sh

我有这个脚本可以在我的linux机器上运行

#!/bin/sh
c=1
if [ $c == 1 ]
then
  echo c is 1
else
  echo c is 0
fi
Run Code Online (Sandbox Code Playgroud)

但是当我在android中使用它时如下:

#!/system/bin/sh
c=1
if [ $c == 1 ]
then
  echo c is 1
else
  echo c is 0
fi
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误:

[: not found
Run Code Online (Sandbox Code Playgroud)

编辑

还有其他逻辑来检查它的值$c,无论是1还是0?

Android shell有[]的问题,如果有的话有没有其他方法来检查c的值?

Ted*_*haw 5

andriod shell sh实际上是一个指向busybox的链接,它被调用为

busybox sh
Run Code Online (Sandbox Code Playgroud)

你需要手动设置[小程序

busybox ln -s /your_original_sh_path/busybox [ 
Run Code Online (Sandbox Code Playgroud)

如果您不知道busybox的位置,请尝试列出您提供的/ system/bin/sh

ls /system/bin/sh
busybox which busybox
Run Code Online (Sandbox Code Playgroud)