如何将可执行命令作为参数传递给 adb shell?
How can I pass executable command as argument to 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`
如何传递这样的可执行命令?请对此有所了解。
谢谢。
转义 ` 这样它就不会被 shell 解释。
adb shell ping \`cat /data/my_address.pst\`
您的 cat /data/my_address.pst
命令由本地 shell 执行,因此您需要转义反引号或单引号整个命令。此外,您不需要 sudo
并且使用 $()
优于反引号:
adb shell 'ping $(cat /data/my_address.pst)'
我在执行以下命令时遇到错误:
$ sudo adb shell ping `cat /data/my_address.pst`
其中 my_adress.pst 文件包含 IP 地址。
但是从 shell.
执行相同的命令时工作正常$ sudo adb shell
$ ping `cat /data/my_address.pst`
如何传递这样的可执行命令?请对此有所了解。
谢谢。
转义 ` 这样它就不会被 shell 解释。
adb shell ping \`cat /data/my_address.pst\`
您的 cat /data/my_address.pst
命令由本地 shell 执行,因此您需要转义反引号或单引号整个命令。此外,您不需要 sudo
并且使用 $()
优于反引号:
adb shell 'ping $(cat /data/my_address.pst)'