Listen Sie den Inhalt des Verzeichnisses automatisch auf, wenn Sie dorthin wechseln

323
tonyWaldheim

Ich bin ein großer Fan der Datei ~ / .bash_aliases und versuche, den cdBefehl zu erhalten, den Inhalt eines Verzeichnisses automatisch aufzulisten, wenn ich zu ihm wechsle.

In meine .bash_aliases-Datei habe ich alias cd='cd $1 && ls .'die Datei eingefügt, gespeichert und dann zum Laden der Datei die Quelle angegeben . Wenn ich jetzt laufe cd /, erhalte ich die erwartete Ausgabe, aber mein Verzeichnis ändert sich nicht. Ich bleibe in meinem Heimatverzeichnis.

Jede Hilfe wird sehr geschätzt.

2

1 Antwort auf die Frage

2
RobertL

Sie können dies mit einem Alias ​​nicht wirklich tun, da Aliase keine Befehlszeilenargumente verwenden.

Sie können dies mit einer Shell-Funktion und dem integrierten Befehl namens command. Der commandBefehl weist die Shell an, nur die integrierte Version des cdBefehls zu verwenden, nicht die Funktion. Dies ist notwendig, um eine Rekursion in der Funktion zu vermeiden:

cd() { command cd "$1" && ls }