Wo ist .bashrc?

109

Ich fühle mich dumm zu fragen, aber ich kann nirgendwo eine Antwort darauf finden. Ich versuche, diese Anweisungen zu befolgen , um meine Bash-Eingabeaufforderung zu bearbeiten, aber weder .bashrcin meinem Benutzerverzeichnis ( ~/.bashrc) noch in meinem Ausgangsverzeichnis oder im Hauptdateisystemverzeichnis befindet sich eine.

Es gibt kein .bashrcIn /etc/(es gibt bash.bashrcjedoch ein In).

Erstelle ich eine .bashrcDatei in meinem Benutzer- oder Ausgangsverzeichnis? Gibt es eine bessere, aktuellere Anleitung zum Ändern der Bash-Eingabeaufforderung?

JeanSibelius
quelle
1
Sie müssen .bashrc in nicht finden / bearbeiten /etc/. In Ihrem Ausgangsverzeichnis sollte sich eine .bashrc- Datei befinden. Versuchen Sie zu öffnen / bearbeiten ~/.bashrc. Vorher sollte ich aber auch fragen, ob Sie neu in Linux sind. Wenn Sie Linux noch nicht kennen, kann ich hier ausführliche Anweisungen veröffentlichen.
Ankit
2
In allen obigen Antworten wird empfohlen, Ihre Aliase einzugeben .bashrc, aber Sie sollten sie in .bash_profile Bearbeiten einfügen. Um dies zu verdeutlichen, erstellen Sie kein, .bashrcwenn dies nur der Fall ist, erstellen oder ändern Sie es~/.bash_profile
Louis Maddox
2
@ Louis Das Definieren von Aliasen in .bash_profileist falsch. In Ubuntu .profile(das für Login-Shells ausgeführt wird) werden Quellen verwendet, .bashrcwenn es sich um eine interaktive Bash-Shell handelt. Das Einfügen von Aliasen in .bashrc(oder .bash_aliases, bezogen auf .bashrc) definiert sie in allen interaktiven Bash-Shells. Aliase in .bash_profileergeben dieses Problem und andere. Sehen Sie sich dies , das , diesen Beitrag und die ~/.bashrcKommentare des Standard an , in denen empfohlen wird, Aliase dort oder dort abzulegen .bash_aliases.
Eliah Kagan
2
Oh wow, es tut mir sehr leid, wenn ich jemanden irregeführt habe. Ich habe diesen Kommentar nur ein paar Monate nach der Verwendung von Linux geschrieben. Eigentümlich habe ich sie jetzt in .bashrcund sourced meine .bashrcin .bash_profilemit Code kopiert dieser Super - User - Antwort ( „ Holen Sie sich die Alias - Namen und Funktionen “). Vielen Dank für die Korrektur dieser häufig gestellten Fragen, Eliah, wirklich nette Antwort hier !
Louis Maddox
Eine Antwort auf eine ähnliche Frage für Windows finden Sie hier: Git für Windows: .bashrc oder gleichwertige Konfigurationsdateien für die Git Bash-Shell
Michael Freidgeim

Antworten:

129

Vergessen Sie nicht, dass es sich um eine versteckte Datei in Ihrem Home-Verzeichnis handelt (Sie wären nicht der Erste, der eine Datei erstellt, ls -lund denken, dass sie nicht vorhanden ist).

Mach ein:

ls -la ~/ | more

Auf .bashrcder ersten Seite sollte ein sein. Wenn nicht einfach erstellen mit:

vi ~/.bashrc

und fügen Sie die Zeilen hinzu, die Sie hinzufügen müssen.

Berechtigungen von mir .bashrcsind:

-rw-r--r--  1 discworld discworld  3330 Mar 10 16:03 .bashrc

( chmod 644 .bashrcum es zu machen rw r r).

Rinzwind
quelle
3
Das war genau das - versteckte Datei, und ich dachte nicht, über das Offensichtliche hinauszuschauen. Danke - vielleicht hilft das auch anderen Shmucks wie mir. :)
JeanSibelius
1
Ich verstehe anscheinend sudo...nicht, oder touch ~/.bashrc?
Lgarzo
@ Rinzwind Ich denke, diese Zeile hat noch einen zusätzlichen Punkt im Dateinamen.
Lgarzo
Nein, es gab keinen zusätzlichen Punkt! Ich bestreite, dass dieser Befehl 2 Fehler enthält! : = D
Rinzwind
Es tut mir leid! : P
lgarzo
28

Benutzerspezifisch , standardmäßig ausgeblendet.

~/.bashrc

Wenn nicht, erstellen Sie einfach eine.

Systemweit :

/etc/bash.bashrc
Alen
quelle
12

Es gibt eine .bashrc in jedem Benutzerordner (99,99% der Zeit) sowie eine systemweite (deren Speicherort ich in Ubuntu nicht kenne).

Der schnellste Weg, um darauf zuzugreifen, ist nano ~/.bashrcvon einem Terminal aus (ersetzen Sie ihn nanodurch das, was Sie verwenden möchten ).

Wenn dies nicht im Basisordner eines Benutzers vorhanden .bashrcist, wird der systemweite Fallback verwendet, da er vor der Benutzerdatei geladen wird. Sie können es einfach kopieren und einfügen (natürlich mit Root-Rechten), aber a .bashrcist auf Benutzerebene nicht unbedingt erforderlich (es kann erforderlich sein, damit die Dinge funktionieren. Ich habe es nicht herausgefunden), da es meistens das gesamte System überschreibt eine mit benutzerspezifischen Verbesserungen. Sie könnten aber Ihre eigene schreiben.

Die Hauptkomponenten, die Benutzer möglicherweise optimieren, sind PS1(die Bash-Eingabeaufforderung wird standardmäßig angezeigt user@localhost:pwd $) und Aliase sowie das Festlegen einer Farbaufforderung und möglicherweise PS2( Statusmeldung " Besetzt").

MuffinStateWide
quelle
5

Es ist versteckt, weil .der Dateiname mit beginnt. Listen Sie es mit

ls -al

oder aktivieren Sie "Versteckte Dateien anzeigen" unter dem Menü "Ansicht" in Nautilus ( Ctrl- Herledigt auch den Trick).

Sie können es mit Ihrem bevorzugten Texteditor aus Ihrem Home-Verzeichnis heraus bearbeiten cd, um zB in Ihr Home-Verzeichnis zu gelangen:

emacs .bashrc
haziz
quelle
5

Verwenden Sie gedit ~/.bashrc, es ermöglicht Ihnen, ~/.bashrcmit gedit zu ändern .

Adonese
quelle
Das ist so viel einfacher, danke!
Kourosh
2

Wenn .bashrces sich nicht in Ihrem Basisordner befindet, können Sie es auch nach dem Auflisten der versteckten Dateien kopieren von:

/etc/skel/.bashrc
eaykin
quelle
1

Wenn Sie sich nicht im Basisverzeichnis befinden, können Sie einfach kopieren /etc/bash.bashrcund als Quelle für Ihr Terminal festlegen, indem source .bashrcSie nach dem Kopieren Ihr Terminal aus Ihrem Basisverzeichnis eingeben .

Rohith Yeravothula
quelle
1

Verwenden Sie nano ~/.bashrcdiese Option, um die .bashrc-Datei zu öffnen und zu bearbeiten. (Dadurch wird die Datei erstellt, falls sie noch nicht vorhanden ist.)

gsshakil
quelle
3
Sie müssen sudoIhr eigenes nicht bearbeiten~/.bashrc
muru
0

Wenn Sie die Verschlüsselung verwenden und von der Befehlszeile aus arbeiten, müssen Sie möglicherweise nicht zuerst das reale Ausgangsverzeichnis (im Gegensatz zur grafischen Benutzeroberfläche, in der dies automatisch erfolgt) mit dem Befehl bereitstellen:

ecryptfs-mount-private

(Ich hatte die gleiche Frage und bin über diese Frage gestolpert; meine Antwort fand ich stattdessen in der Readme-Datei.)


quelle