如何将可执行命令作为参数传递给adb shell?

时间:2016-02-12 11:13:52

标签: android adb adb-shell

执行以下命令时出错:

$ sudo adb shell ping `cat /data/my_address.pst`

my_adress.pst文件包含ip地址。

但是从shell执行时,同样的命令工作正常。

$ sudo adb shell

$ ping `cat /data/my_address.pst`

我如何传递这样的可执行命令?请详细说明一下。

感谢。

2 个答案:

答案 0 :(得分:1)

转义`所以它不会被shell解释。

adb shell ping \`cat /data/my_address.pst\`

答案 1 :(得分:1)

您的cat /data/my_address.pst命令由本地shell执行,因此您需要转义反引号或单引号整个命令。此外,您不需要sudo,并且使用$()比反引号更可取:

adb shell 'ping $(cat /data/my_address.pst)'