Um die Android-Entwicklung zu beschleunigen, habe ich meine bearbeitet ~/.bashrc
und einige Pfade hinzugefügt zu PATH
:
export PATH=${PATH}:/opt/android-sdk/tools:/opt/android-sdk/platform-tools
Dies funktioniert einwandfrei über die Befehlszeile (ich kann einfach tippen android
und egal wo ich bin, das Android SDK und der AVD Manager werden einwandfrei gestartet.
Wenn ich jedoch versuche, android
den Alt+F2Dialog (Anwendung ausführen) einzugeben, wird der folgende Fehler angezeigt:
Speicherort 'file: /// home / felix / android' konnte nicht geöffnet werden.
Fehler beim Angeben der Datei '/ home / felix / android': Keine solche Datei oder kein solches Verzeichnis
Warum das? Was PATH
verwendet das Dialogfeld "Anwendung ausführen"?
PATH=
Anweisung nach verschoben~/.profile
und sie funktioniert sowohl in Alt + F2 als auch in einem Terminal. Vielen Dank.~/.profile
~/.profile
funktioniert nicht mehr. Gibt es ein Update dazu?~/.bashrc
ist~/.profile
standardmäßig enthalten. Das~/bin
Verzeichnis wird hinzugefügtPATH
standardmäßig ebenfalls . Erstellen Sie das~/bin
Verzeichnis und fügen Sie sym-links (ln -s
) zu Anwendungen hinzu, die Sie verwenden möchten, oder ändern Sie Ihre~/.bashrc
.Der Standardinhalt der genannten Dateien befindet sich in
/etc/skel
- wird beim Erstellen eines neuen Kontos und seiner Home-Verzeichnisse verwendet.quelle
.profile
von abash
! Die bedingten Prüfungen für die$BASH_VERSION
Definierte, was Gnome nicht tut. Übrigens führt das Entfernen der Bedingung zu Problemen mit einigen Desktop-Umgebungen wie LXDE.Ich hatte das gleiche Problem mit Linux Mint (Cinnamon 2.8.8), und es gab keine Möglichkeit, es mit den üblichen Korrekturen zum Laufen zu bringen (mit a
.profile
,Xsession
Shebang ändern in/bin/sh -l
).Das Problem ist das
/bin/sh
, was normalerweise ein Symlink zum/bin/dash
Lesen ist,~/.profile
wenn es sich um eine Anmeldeshell handelt (dh mit der-l
Option).Sie können dies mit strace überprüfen:
Ich konnte nicht herausfinden, welches Skript ich ändern sollte (habe einige unter / etc / X11 und / etc / mdm ausprobiert), aber kein Glück.
Also warf ich das Handtuch und zog mich um
/bin/sh
zu zeigen auf/bin/bash
anstatt/bin/dash
und es funktioniert jetzt. :) :)quelle