即使在/ etc / environment中设置了路径,也找不到adb
我在/ opt / android-sdk文件夹中安装了android-sdk修改后的/ etc / environment文件,如下所示
ANDROID_SDK=/opt/android-sdk PATH=...:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
注销并再次登录。 如果我在终端中键入adb或android,则显示未找到命令。
:~$ echo $ANDROID_SDK /opt/android-sdk :~$ echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$JAVA_HOME/bin:$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools
我想我做错了什么。 请指正。
在/etc/environment
中,不执行变量扩展。 你不能在这里定义一个变量然后用$
引用它。 你的路径字面上包含“$ ANDROID_SDK”,它没有扩展到/opt/android-sdk
如果要在/etc/environment
定义路径,请使用完整路径
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/android-sdk/platform-tools:/opt/android-sdk/tools
(以及我在你的问题中没有看到的完整的JAVA_HOME路径。)
您可能希望在本地定义它(通常是首选),而不是在系统范围内定义路径。
/etc/environment
的本地版本是〜/ .pam_environment。 这有一个略有不同的语法。 要在此处设置路径,请引用当前路径并附加如下附加内容:
PATH DEFAULT=${PATH}:/opt/android-sdk/platform-tools:/opt/android-sdk/tools
(以及另一个冒号后你的JAVA_HOME路径)
您也可以使用~/.profile
或~/.bashrc
– 在这些文件中,您可以像以前一样使用常规shell语法和$
expansion。
在定义它之后,您需要通过执行source .profile
或您使用的任何文件,或者通过注销并重新登录来获取文件。(例外是.bashrc
,每次启动交互式shell时都会获取,因此打开一个新的终端就足够了)
那么为了解决这个问题,我建议你在配置文件中提供环境参数。 那么请在文件/ etc / profile的底部添加ANDROID_SDK和PATH参数。 然后注销并登录,看看,它会工作。