Co oznacza „cd -”?


98

W skrypcie powłoki bash dzisiaj zauważyłem poniższe polecenie na końcu skryptu. Wiem, co jest, cdale nie jestem świadomy znaczenia kreski po nim.

cd -

Co to znaczy? Google naiwnie obcina to, -więc nie mogę znaleźć odpowiedzi.


@nm Nie man cdna moim komputerze, FYI.
Dan Fego

Próbowałem tego.
Zwróci

2
Możesz również spojrzeć na polecenia pushdi popd. Nie mogłem bez nich żyć.
Brett Hale

2
@nm - cdnie jest zewnętrznym plikiem binarnym, jest to polecenie wbudowane w powłoki. podpowiedź man bash.
jordanm

Mam man cdna swoim systemie (Gentoo), jest napisane: This manual page is part of the POSIX Programmer's Manualetc itd. Jeśli brakuje twojego, zawsze możesz google man cd.
n. zaimki m.

Odpowiedzi:


131

Jeśli jako argument zostanie określony pojedynczy myślnik, zostanie on zastąpiony wartością OLDPWD.

OLDPWDJest ustawiany przez cdkomendę i to poprzedni katalog roboczy.


2
Dzięki. To było krótkie i kompletne z punktu widzenia programisty.
AppleGrew

co się stanie, jeśli dostarczymy -plik.
viveksinghggits

@viveksinghggits Możesz go użyć cd ./-lub usunąć, możesz przed nim uciecrm -fr -- -
Sandro Munda

20

cd - wraca do katalogu, w którym byłeś poprzednio.

Na przykład:

marcelo @ marcelo: ~ $ cd / opt
marcelo @ marcelo: / opt $ cd / usr / bin
marcelo @ marcelo: / usr / bin $ cd -
/optować
marcelo @ marcelo: / opt $ 

Byłem w / opt, zmieniłem na / usr / bin, a potem wróciłem do / opt z cd -


10

cd - przenosi cię z powrotem do ostatniego katalogu.

$ cd ~/Desktop
$ pwd
/Users/daknok/Desktop
$ cd /
$ pwd
/
$ cd -
$ pwd
/Users/daknok/Desktop

6

cd - wraca do poprzedniego katalogu, w którym byłeś.

Powiedz, że jestem /usr/i piszęcd /var/local/someplace/else

Następnie używam cd -Wrócę do/usr


6

Z instrukcji

Argument - jest równoważny $ OLDPWD. Jeśli zostanie użyta niepusta nazwa katalogu z CDPATH lub jeśli - jest pierwszym argumentem, a zmiana katalogu się powiodła, na standardowe wyjście zostanie zapisana bezwzględna ścieżka dostępu do nowego katalogu roboczego. Wartość zwracana to prawda, jeśli katalog został pomyślnie zmieniony; w przeciwnym razie fałsz

Dlatego -jest równoważne z $OLDPWD, który przechowuje ostatni katalog, w którym znajdowała się powłoka i jest ustawiany przez poprzednie cdwywołanie.



2

cd - przenosi cię z powrotem do ostatniego katalogu, w którym byłeś. na przykład

cd ~/Documents
cd ~
cd /

Teraz jesteś w '/', a jeśli uruchomisz 'cd -' będziesz w '~'. BTW, uruchom ponownie 'cd -', wrócisz do '/', ale nie '~ / Documents'


-1

„Bieżący katalog” oznacza polecenie bash cd terminal. To znaczy „trzymaj mnie w tym katalogu”


cd oznacza „Zmiana katalogu”!
Reyhaneh Trb
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.