在Android Studio的安装说明中他们说:
3. [OPTIONAL] Add "{installation home}/bin" to your PATH environment
variable so that you may start Android Studio from any directory.
我按照这个 Stack Overflow 问题。但是我现在该如何启动它呢?问题是我需要执行一个 shell 脚本studio.sh
,但我担心这些对于PATH
变量来说是不可见的。
我应该能够通过调用在终端的任何目录中调用它studio.sh
。
编辑:更多信息
studio.sh
运行 Android Studio
我按照 android-studio zip 文件(来自官方网站)附带的官方安装说明进行操作。
我补充道
export PATH=$PATH:$HOME/Installs/android-studio/bin
在......的最后~/.profile
。
添加更多输出:
$ ls -l $HOME/Installs/android-studio/bin/studio.sh
-rwxr-xr-x 1 roman roman 6985 bře 21 18:26 /home/roman/Installs/android-studio/bin/studio.sh
$ echo $PATH
/home/roman/bin:/home/roman/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/roman/Installs/android-studio/bin/studio.sh
$ type studio.sh
bash: type: studio.sh: not found
答案1
这是 PATH 中的最后一项:
/home/roman/Installs/android-studio/bin/studio.sh
问题是 PATH 中的项目需要目录但你添加了一个文件。我不确定这是怎么发生的,因为它与export PATH=...
您发布的行不匹配。
答案2
首先找出目录studio.sh
,以便将其添加到路径中。考虑以下内容:
rick@alien:~$ locate --regex "wpasupplicant$"
/etc/network/if-down.d/wpasupplicant
/etc/network/if-post-down.d/wpasupplicant
/etc/network/if-pre-up.d/wpasupplicant
/etc/network/if-up.d/wpasupplicant
/lib/systemd/system-sleep/wpasupplicant
/mnt/e/lib/systemd/system-sleep/wpasupplicant
/usr/share/doc/wpasupplicant
/usr/share/lintian/overrides/wpasupplicant
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ which wpasupplicant
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ type wpasupplicant
bash: type: wpasupplicant: not found
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ ll /lib/systemd/system-sleep/wpasupplicant
-rwxr-xr-x 1 root root 182 Oct 26 2015 /lib/systemd/system-sleep/wpasupplicant*
该文件wpasupplicant
定义为可执行文件按照x
中的定义-rwxr-xr-x
。
还有一种可能性是,studio.sh
它未定义为可执行文件,但仍在路径中。在这种情况下,which
和type
命令将找不到它,但locate
命令仍会找到它。
如果文件刚刚创建
考虑一下如果文件刚刚创建:
rick@alien:~$ cp .rm-kernels-ndx asdf.asdf
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ locate asdf.asdf
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ time sudo updatedb
real 0m3.460s
user 0m0.503s
sys 0m1.167s
───────────────────────────────────────────────────────────────────────────────────────────
rick@alien:~$ locate asdf.asdf
/home/rick/asdf.asdf
您需要运行sudo updatedb
定位命令来查找新创建的文件。该程序updatedb
会自动调用,cron
但新创建的文件可能不会出现。在对此主题发表评论后,我决定将自己的程序改为每五分钟sudo crontab -e
运行一次。/usr/bin/updatedb
找到目录后
要将目录添加到路径,请编辑~/.profile
并添加以下内容:
if [ -d "$HOME/Installs/android-studio/bin" ] ; then
PATH="$PATH:$HOME/Installs/android-studio/bin"
fi