我在~/android-sdk-linux/platform-tools/
中有 adb 二进制文件。我创建了一个 adb 二进制到 /usr/local/sbin/
的符号链接。我可以从两个指定的目录执行 adb:
aswin@Tron:/usr/local/sbin$ sudo ./adb shell
[sudo] password for aswin:
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
root@android:/ #
但
aswin@Tron:/usr/local/sbin$ sudo sh adb shell
adb: 1: Syntax error: "(" unexpected
我通过以下方式将两者添加到$PATH
:export PATH=$PATH:/usr/local/sbin/:~/android-sdk-linux/platform-tools/
并将行添加到~/.bashrc
aswin@Tron:/usr/local/sbin$ echo "$PATH"
/home/aswin/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/usr/local/sbin/:/home/aswin/android-sdk-linux/platform-tools/
但是当我尝试执行时:
aswin@Tron:~$ ./adb shell
bash: ./adb: No such file or directory
问题出在哪里?为什么这不起作用?
如果我理解正确,你在这里有两个问题。 第一:
aswin@Tron:/usr/local/sbin$ sudo sh adb shell
adb: 1: Syntax error: "(" unexpected
您正在尝试使用导致此错误的sh
执行二进制文件。 简单地说sudo adb shell
只要adb
存在于sudo
环境的PATH
中,就会起作用。
第二:
aswin@Tron:~$ ./adb shell
bash: ./adb: No such file or directory
将包含adb
的目录添加到PATH
后,您需要通过说:
adb shell
您说的是./adb ...
只有当当前工作目录中存在adb
时才有效。