今天在 mac 上使用 adb 的时候,明明自己已经安装、配置了 adb,但执行 adb 命令一直报错 command not found: adb,而且有时候可以,重新打开终端又不行了,这是为啥呢?
可能的原因:mac 有多种 shell 终端,例如 bash、zsh。 我用的 zsh,但环境变量配置对应的是 bash,然后配置文件在 bash 生效了,但是我打开 zsh shell 终端是不生效的。所以提示 adb 命令找不到。
那么,首先看一下 zsh 的环境变量配置文件,输入:cat ~/.zshrc
没有找到 adb 的环境变量配置,这也就可以理解为什么使用 zsh 终端执行 adb 命令提示找不到了。
然后看一下 bash 的环境变量配置,输入: cat ~/.bash_profile
果然,adb 配置在 bash 的环境变量里,估计使用 bash 的终端不会提示 adb 命令不可用。
下面有 2 种解决方案:
方案一: 配置 zsh 终端
- 执行 touch ~/.zshrc 命令检查是否已有 .zshrc 文件,如果没有则会自动创建文件。
- 接着执行 open ~/.zshrc 命令打开文件或者使用 vi 进行编辑。
- 在文件中输入 source ~/.bash_profile 这一行命令文本,加载bash的环境变量。
- 执行 source ~/.zshrc 立即应用文件修改。
- 执行adb shell 测试最后可以正常使用 adb 命令了。
方案二:修改 zsh 为 bash
- 执行下面命令将默认shell改成 bash :
chsh -s /bin/bash
- 接着调用下面命令立即应用bash的配置文件:
source ~/.bash_profile
- 执行adb 命令,可以正常使用 adb 命令了。
无论是那种方案都需要在 .bash_profile 文件中配置好Android环境来使用 adb ,配置 Android Sdk 的路径:
export ANDROID_HOME=/Users/vin/Library/Android/sdk
export PATH=${PATH}: ${ANDROID_HOME}/tools
export PATH=${PATH}: ${ANDROID_HOME}/platform-tools