Ich möchte ~/bin
aus meinem Pfad entfernen . Ich habe es vor Monaten eingerichtet, als Linux (Ubuntu) für mich sehr neu war, aber ich weiß nicht, wie ich es hinzugefügt habe ...
Wenn ich alle unten aufgeführten Dateien durchsuche, wird nichts angezeigt.
Wo sonst könnte es eingestellt werden? Es wird nach den $HOME/.profile
Präfixen PATH mit vorangestellt$HOME/bin
Wenn es einen Unterschied macht, erhalte ich denselben PATH sowohl von der Eingabeaufforderung als auch von einem laufenden Skript.
#!/bin/bash
{
echo "first dir of PATH is: '${PATH%%:*}'"
shopt -s nullglob
cat \
/etc/profile \
/etc/bash.bashrc \
/etc/profile.d/*.sh \
$HOME/.bashrc \
$HOME/.bash_aliases \
/etc/bash_completion \
$HOME/.bash_completion* \
$HOME/.profile \
$HOME/.profile_zap \
$HOME/.bash_profile* \
$HOME/.bash_login* \
| sed -rne '/~\/bin/p'
}
Ausgabe ist:
first dir of PATH is: '~/bin'
bash
environment-variables
path
Peter.O
quelle
quelle
PATH
stattdessen zu greifen . Wenn Sie immer noch kein Glück haben, überprüfen Sie alle Dateien auf alles, was bezogen wird.~/.gnomerc
...Antworten:
Möglicherweise möchten Sie die vollständige Umgebungslast bei der Anmeldung verfolgen. Nur eine Idee.
Da / etc / profile die erste Datei ist, die bezogen wird, können Sie ganz oben Folgendes hinzufügen:
Öffnen Sie dann ein neues Terminal und führen Sie ein
bash -l
; Gehen Sie danach zum ursprünglichen Terminal und entfernen Sie die hinzugefügten Zeilen (Sie möchten eine Arbeitsumgebung, nicht wahr?).Sie sollten mit einer vollständigen Ablaufverfolgung aller Schritte der load_the_bash_environment unter /tmp/debug.log enden. Es wird eine lange Datei sein.
Damit müssen Sie in der Lage sein zu lokalisieren, wo das "~ / bin" in Ihren PFAD gelangt
Ich würde zuerst nach einem Grep aller bezogenen Dateien suchen. Aus Ihrem Beitrag wette ich, dass das ~ / bin im Pfad in einer anderen Datei als die von Ihnen aufgelisteten festgelegt ist.
quelle
konsole
) ... Der erste Verweis darauf~/bin
zeigt es bereits in der Pfad, aber ich kann keinen Hinweis darauf sehen, woher er kam. Zu diesem Zeitpunkt folgt bereits der$HOME/bin
von$HOME/.profile
(Ich bin sicher, dass er von dort stammt, da ich für diesen Test ein spezielles zusätzliches Verzeichnis verwendet habe). Ich habe es jedoch geschafft, es empirisch zu finden, indem ich alle meine Textdateien durchsucht habe. Es stammt von~/.gnomerc
... und ich muss mich erneut anmelden, damit es sich ändert. ?? !! ..bash -l
? Es muss das Debugging (-x), das an stderr geht, an /tmp/debug.log senden. in der Tat habe ich dies gerade getestet und funktioniert wie erwartetset
mitexec
in der zweiten Zeile, dann ist es perfekt für mich gearbeitet :)