获取 adb shell 命令的结果代码

Sea*_*ain 3 shell android adb

我应该怎么得到$?adb shell <command>

我想检查adb shell mkdir /xxx.

我执行了mkdir命令adb shell并失败了,但结果$?0.

$ adb shell mkdir /xxx
mkdir failed for /xxx, Read-only file system
$ adb shell echo $?
0

$ adb shell "mkdir /xxx; echo $?"
mkdir failed for /xxx, Read-only file system
0
Run Code Online (Sandbox Code Playgroud)

我想得到结果代码,adb shell <command> 但不是在如下交互模式下:

$ adb shell
shell@android:/ $ mkdir /xxx
mkdir failed for /xxx, Read-only file system
255|shell@android:/ $ echo $?
255
Run Code Online (Sandbox Code Playgroud)

Die*_*ano 6

你应该做:

$ adb shell 'mkdir /xxx; echo $?'
mkdir failed for /xxx, Read-only file system
255
Run Code Online (Sandbox Code Playgroud)

注意单引号,否则$?在到达 adb 之前进行评估。