2016-07-15 8 views
0

Dieser Befehl druckt die Verzeichnisnamen nur fein:Erhalten Sie aktuelle Verzeichnis durch Alias ​​in git-bash (windows)

echo ${PWD##*/} 

Dieser Alias ​​in Bashrc nicht:

alias echodir="echo ${PWD##*/}" 

Sie funktionieren beide gut im Home-Verzeichnis, aber nach dem Ändern von Verzeichnissen funktioniert nur das manuelle Eingeben. Der Alias ​​druckt weiterhin den Home-Ordner. Ich verstehe das, weil git bash mit verschachtelten Shells oder so etwas arbeitet - die Basis-Shell ändert überhaupt keine Verzeichnisse, sondern die Oberfläche, die man tut.

Gibt es eine Möglichkeit, einen Alias ​​zu erstellen, der wie erwartet funktioniert?

+1

Probieren Sie einfache Anführungszeichen statt doppelte Anführungszeichen - einfache Anführungszeichen verhindern die Erweiterung von Variablenreferenzen. – twalberg

+0

Das hat funktioniert! Vielen Dank! Ich habe doppelte Anführungszeichen verwendet, weil das volle Echo anderen Text enthielt, aber mit den von Ihnen geteilten Informationen konnte ich es zum Laufen bringen: 'alias updating = 'echo" ----- Aktualisierung "$ {PWD ## * /} "-----" ' – randomraccoon

+0

@twalberg du solltest das als offizielle Antwort posten, damit ich es akzeptieren kann! Sonst füge ich es irgendwann selbst hinzu, aber du solltest den Kredit bekommen. – randomraccoon

Antwort

0

Ich poste nur die Antwort twalberg in den Kommentaren setzen (er bekommt den Kredit):

Als One-Off-Befehl:

echo "-----Updating "${PWD##*/}"-----"

als Alias:

alias updating='echo "-----Updating "${PWD##*/}"-----"'