Czym jest skrót bash, aby przejść do poprzedniego katalogu?


76

Niestety, dowiedziałem się o tym w zeszłym roku, natknąwszy się na niego losowo w Internecie. Używam go tak rzadko, że zawsze zapominam, co to jest, zanim znów go potrzebuję.

Jak przejść do poprzedniego katalogu?

Odpowiedzi:


105

Skrót to -

Próbować cd -

Jeśli chcesz użyć tego w swoim monicie, musisz się do tego odwołać za pomocą ~-.

Zobacz przykład:

[echox@kaffeesatz ~]$ cd /tmp
[echox@kaffeesatz tmp]$ ls
cron.iddS32  serverauth.CfIgeXuvka
[echox@kaffeesatz tmp]$ cd -
/home/echox
[echox@kaffeesatz ~]$ ls ~-
cron.iddS32  serverauth.CfIgeXuvka

19

Możesz także spojrzeć na pushdi popd, które tworzą stos katalogów, aby pamiętać, gdzie byłeś.

Aby użyć, pushd <directory>zmienia <directory>i zapisuje poprzedni katalog. Aby wrócić do tego zapisanego katalogu, użyj popd.


2

Zgodnie z odpowiedzią @echox, rzeczywiście można użyć cd -strony bashwyjaśniającej:

Gdy jako argument jest używany a, będzie to równoznaczne z poleceniem:

                cd "$OLDPWD" && pwd

który zmienia poprzedni katalog roboczy, a następnie zapisuje jego nazwę.

Uwaga zmieniony do katalogu jest wyprowadzany przez nieodłączne pwdw cd -. Możesz nie chcieć tego wyniku w skrypcie. Właśnie tam alternatywa staje się przydatna - po prostu zrób

cd "$OLDPWD"

i jesteś skończony!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.