Kürzlich habe ich Android Studio installiert. Jetzt möchte ich android-studio / bin / dauerhaft zur Umgebungsvariablen PATH als Session-wide environment variables
und nicht als hinzufügen System-wide environment variables
. Dazu habe ich versucht, ~/.profile
wie hier beschrieben zu bearbeiten . Also habe ich diese am Ende von ~/.profile
:
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH:/usr/local/Android/android-studio/bin"
fi
Dann melde ich mich erneut an, um die Variable zu initialisieren. Aber wenn ich studio.sh
im Terminal laufe , bekomme ich folgendes:
studio.sh: Befehl nicht gefunden
Hier sind die Ergebnisse von $PATH
und echo $PATH
:
$ $PATH
bash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:
No such file or directory
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Auch ich bin mir sicher, dass ~/.bash_profile
und ~/.bash_login
nicht existieren. Was verursacht nun das Problem und wie kann ich das lösen?
Bearbeiten:
Ich ändere das Ende ~/.profile
davon, aber es funktioniert nicht:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
PATH="$PATH:/usr/local/Android/android-studio/bin"
fi
quelle
if
und sein solltefi
. Solange Sie es behalten, wo es jetzt ist, können Sie sagenPATH="$PATH:/some/directory:/some/other/directory"
OK, hier gibt es ein paar Probleme:
Verwenden Sie
echo $PATH
statt$PATH
zu überprüfen!Der Grund dafür ist, dass Bash
$PATH
überall durch den Inhalt dieser Variablen ersetzt$PATH
wird. Wenn Sie also nur ausführen , wird versucht, den Inhalt der Variablen auszuführen, was für den Bash-Interpreter Unsinn ist.~/.profile
um~/.bashrc
auch."$HOME/bin"
vorhanden ist, indem Sie ausführenls -d $HOME/bin
. Wenn Sie einen Fehler wiebash: ls: No such file or directory.
diesen erhalten, existiert er nicht. Wenn es existiert, sollten Sie eine Ausgabe wie erhalten/home/[username]/bin
.Wenn alle zufrieden sind, sollten Sie bereit sein zu gehen. Wenn nicht, verwenden Sie
cd [path_to_studio_directory]; ./studio.sh
stattdessen einfach diesen Befehl : . Auf diese Weise starten Sie in diesem Ordner und garantieren dessen Ausführung.quelle
~/.bashrc
wenn ich das hier nicht getan habe: help.ubuntu.com/community/EnvironmentVariables . Auch wie kann ich die Existenz von überprüfen$HOME/bin
?~/.bashrc
immer ausgeführt wird, wenn Sie Terminal betreten. Es ist nur eine weitere Überprüfung, um sicherzustellen, dass es passiert. Siehe Bearbeiten zur Überprüfung der Existenz @hasanghaforian~/.profile
PATH bearbeiten, eine Umgebungsvariable, ist der neue Wert in der gesamten Sitzung verfügbar, unabhängig davon, ob Sie das Terminal verwenden oder nicht. Wenn Sie es richtig machen, brauchen Sie keinen "weiteren Scheck". ;)~/.profile
überhaupt nicht verarbeitet wird, also vertraue ich ihm nicht so sehr ...