Identifizieren Sie zunächst Ihre Shell, wie in einer anderen Antwort vermerkt, dies erfolgt einfach über die ps Befehl ...
$ ps
PID TTY TIME CMD
3360 pts/2 00:00:00 bash
3702 pts/2 00:00:00 ps
Um sicherzustellen, welche Dateien gelesen werden, müssen Sie das System untersuchen, bei dem Sie sich anmelden. 'bash' shell hat viele 'wenn dies' dann 'mach das' sonst 'mach etwas anderes' optionen. Um eine vollständige Beschreibung der zu beschaffenden Dateien zu erhalten, siehe Hier , aber normalerweise ist die Liste ...
- / etc / profile
- $ HOME / .bash_profile
- $ HOME / .bashrc (falls dies im .bash_profile konfiguriert ist)
- $ HOME / .bash_logout (beim Abmelden, nicht beim Anmelden)
Für die Bourne-Shell ('sh') gilt im Allgemeinen Folgendes, wenn Sie sich anmelden
- / etc / profile
- $ HOME / .profile
Was ich gerne auf Systemen mache, die ich nicht kenne, ist eine Zeile in Startdateien, die ich lesen möchte, um zu prüfen, ob die Standardausgabe an ein Terminal angeschlossen ist und ob der Dateiname angezeigt wird. In diesem Beispiel verwende ich es in der .bash_profile-Datei.
[ -t 1 ] && echo "reading .bash_profile"
Dies funktioniert entweder für bash oder sh (und einige andere Derivate auch). Dies ist hilfreich, da ich weiß, was wann gelesen wird und wenn ich Fehler erhalte, weiß ich, aus welcher Datei sie stammen (Fehler vor der ersten Echo-Meldung sind wahrscheinlich auf den Anmeldevorgang selbst oder auf das systemweite Verzeichnis / etc / profile zurückzuführen.
Vergessen Sie auch nicht, dass Sie jederzeit Ihre eigenen Startdateien erstellen und diese selbst einbinden können, indem Sie sie in eine Datei einbinden, die bereits bezogen wird.