开发者

How to use if in comparing 2 strings in ADB shell

How to use if in comparing 开发者_JAVA技巧2 strings in ADB shell, I am trying to use :

if ["a" = "a"];
then
fi

this gives an error [: not found

I tried all the varients of if , got the same error,

even just

if [];
then
fi 

is also giving the same answer.


What if you put spaces inside the brackets, like this:

if [ "a" = "a" ]


According to http://developer.android.com/guide/developing/tools/adb.html, adb (Android Debug Bridge) uses the ash shell.

I don't have adb, but I do have ash on my Ubuntu system. On that system, the following works:

if [ "a" = "a" ]
then
    echo ok
fi

Try that exact code in your adb shell, including all the spacing. In particular the spaces around the [ and preceding the ] are mandatory.

Note that the semicolon after the ] is not required; it's probably ok, but delete it just to be sure. (You said you "tried all the similar stuff". Don't try "similar stuff"; try this.)

Are you sure you're in the shell (adb shell) and not in adb itself? (I don't know whether adb has an interactive mode, so that might not make sense.)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜