Ich kann .bash_profileUbuntu 14.04 nicht in meinem /home/userVerzeichnis finden. Ich habe den ls -aBefehl verwendet, um das zu sehen .bash_profile, aber es gibt keine solche Datei.
Ich kann .bash_profileUbuntu 14.04 nicht in meinem /home/userVerzeichnis finden. Ich habe den ls -aBefehl verwendet, um das zu sehen .bash_profile, aber es gibt keine solche Datei.
Antworten:
Ubuntu verwendet ~/.profile.
du kannst dein .bash_profilein Ubuntu erstellen aber dann .profilewird es nicht gelesen.
Wenn wir den .profile-Inhalt lesen:
cat ~/.profile
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
Also ~/.profilestatt verwenden~/.bash_profile
vim ~/.bashrcdann. ~/.bashrc
Beim Aufrufen einer Login-Shell sucht bash nach den Konfigurationsdateien in der folgenden Reihenfolge:
[0] ~/.bash_profile
[1] ~/.bash_login
[2] ~/.profile
Nach dem ersten zu finden, hört es sucht die andere so , wenn es eine ist .bash_profilein meiner $HOMEbash wird nicht aussehen .bash_loginund .profilemehr.
Aus diesen drei Dateinamen, die Ubuntu standardmäßig verwendet .profile, können Sie ihn umbenennen, .bash_profilewenn Sie möchten:
mv ~/.profile ~/.bash_profile
Nun , wenn wir eine neue Bash - Shell öffnen bash -l, su - $USER, sudo -u $USER -ioder andere Befehle , die bash als Login - Shell ausgeführt wird , ~/.bash_profilewird erhalten bezogen.
Was ich bisher angesprochen habe, gilt nur für Bash selbst. Wenn Sie sich über eine grafische Benutzeroberfläche am System anmelden, ist der Display-Manager für die Beschaffung der richtigen Dateien verantwortlich.
Ubuntu verwendet gdm3als Anzeigemanager, wenn wir uns Folgendes ansehen: /etc/gdm3/XsessionWir können sehen, dass keine der Dateien bezogen wird, außer .profile:
# First read /etc/profile and .profile
for file in /etc/profile "$HOME/.profile"; do
if [ -f "$file" ]; then
source_with_error_check "$file"
fi
done
Wenn Sie sich also über eine grafische Benutzeroberfläche anmelden, behalten Sie den .profileNamen der Datei bei, da Sie sonst möglicherweise einige Variablen und Einstellungen in Ihren Umgebungen übersehen.
Ich denke, die bessere Option ist das Erstellen eines Symlinks zu .profile:
ln -s ~/.profile ~/.bash_profile
Jetzt bleiben Ihre Daten erhalten .profile, gdmverpassen nichts, .bash_profilewas tatsächlich passiert .profile, und wenn Sie sie bearbeiten, erhalten Sie dasselbe Ergebnis.
Wenn Sie keine haben, .profileholen Sie sich hier eine Kopie davon:
cp /etc/skel/.profile ~/.profile
oder
# Remember the note above
cp /etc/skel/.profile ~/.bash_profile
man bashUnter Ubuntu wird noch beschrieben, wie es zuerst nach .bash_profile aussehen wird.
.bash_profile zuerst, es kann es nicht finden (weil es nicht existiert), dann sucht, .bash_loginkann es nicht wieder finden (weil Ubuntu diese beiden Namen nicht verwendet), schließlich sucht es .profileund ja, da ist es. Wenn Sie also ein .bash_profileIn erstellen und ~Ubuntus überschreiben ~/.profile, ist dies das Standardverhalten von bash. Hier wurde nichts geändert.
.bash_profile, wird dieser nicht gelesen. Mir ist gerade aufgefallen, dass Ubuntu 'Bash' nicht mehr als GUI-Anmeldeshell verwendet. Stattdessen wird "Dash" verwendet. Ich denke, dass dies seit ungefähr 18.04 wahr ist.
Das heißt, die Datei existiert nicht. Sie können die Datei jedoch erstellen und die Datei bashausführen / als Quelle angeben, wenn sie bashals Anmeldeshell aufgerufen wird. Sie melden sich also immer über eine Shell an (zum Beispiel über ssh).
Wenn der Inhalt bei jedem Öffnen eines Terminals ausgeführt werden soll, sollten Sie .bashrcstattdessen die Datei ändern .
/etc/skel/Verzeichnis kopieren .
.bash_profilein Kommentaren zu anderen Antworten erklärt, warum Ubuntu fehlt (und nicht funktioniert).
Top-Antwort zu verwenden, ~/.profileanstatt ~/.bash_profilehat bei mir nicht funktioniert.
Änderung hat .bashrcfunktioniert
Gerade:
vim ~/.bashrc
Hinweis: Ich verwende Ubuntu WSL.
~/.profilenur nicht standardmäßig in Ubuntu 18.04 geladen
Wenn Sie die .bashrc-Datei meinen, finden Sie sie in Ihrem Home-Ordner. Wenn es nicht vorhanden ist, können Sie es aus dem Ordner / etc / skel in Ihren Ausgangsordner kopieren.
Wenn Sie weitere Informationen zu diesem Thema benötigen, besuchen Sie bitte die Seite stefaan lippens.
~/.profilestattdessen verwenden.