476 Stimmen

.bashrc bei der ssh-Anmeldung

Wenn ich mich per SSH in meine Ubuntu-Box mit Hardy 8.04 einlogge, werden die Umgebungsvariablen in meinem .bashrc sind nicht festgelegt.

Wenn ich eine Quelle verwende .bashrc sind die Variablen richtig gesetzt, und alles ist gut.

Wie kommt es .bashrc nicht bei der Anmeldung ausgeführt wird?

823voto

Ayman Hourieh Punkte 122012

.bashrc wird nicht bezogen, wenn Sie sich über SSH anmelden. Sie müssen die Quelle in Ihrem .bash_profile wie diese:

if [ -f ~/.bashrc ]; then
  . ~/.bashrc
fi

109voto

ruseel Punkte 1390

Ich hatte eine ähnliche Situation wie Hobhouse. Ich wollte den Befehl verwenden

ssh myhost.com 'some_command'

some_command besteht in /var/some_location .

Ich habe versucht, Folgendes anzuhängen /var/some_location in die Umgebungsvariable PATH aufnehmen, indem Sie $HOME/.bashrc aber das hat nicht funktioniert. Weil standardmäßig, .bashrc (unter Ubuntu 10.4 LTS) wird aufgrund dieses Codes vorzeitig beendet:

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

Das heißt, wenn Sie die Umgebung für die ssh-Nicht-Anmelde-Shell ändern wollen, sollten Sie Code über dieser Zeile hinzufügen.

38voto

Loïc Wolff Punkte 2899

Wenn die Lösung von ayman nicht funktioniert, benennen Sie Ihre Datei wie folgt .profile anstelle von .bash_profile . Das hat bei mir funktioniert.

38voto

lhunath Punkte 111281

Eine ausgezeichnete Quelle darüber, wie Bash-Aufrufe funktionieren, welche Dotfiles was tun und wie Sie sie verwenden/konfigurieren sollten, finden Sie hier:

0voto

swaz Punkte 171

Ähnlich wie @Loïc Wolff , unten hinzugefügt in meinem $HOME/.bash_profile Ubuntu 16

if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
        echo "Executed .bash_profile , calling .bashrc"
        . "$HOME/.bashrc"
    fi
fi

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X