Jak mogę cofnąć ostatnie polecenie cd?


77

Czy jest jakiś sposób na powrót do poprzedniego katalogu roboczego po wykonaniu cdinnego katalogu?

Mój przypadek użycia polega na tym, że przeglądam strukturę katalogów dla projektu Java i oczekuję, że bieżący katalog ma tylko jeden podkatalog. Więc piszę cdi uderzam Tabi Enterraczej szybko. Jednak Tabzawiodło, jak błędnie oczekiwałem jednego podkatalogu, gdy w rzeczywistości jest ich więcej. Więc teraz właśnie wykonałem cdi jestem teraz w moim katalogu domowym, zamiast projektu Java. Czy istnieje sposób na „cofnięcie” tego cdi powrót do katalogu, w którym byłem?

Odpowiedzi:


130

Możesz użyć, cd -aby wrócić do poprzedniej lokalizacji, bez względu na to, gdzie to było.


10
Cóż ... nawet po latach na Ubuntu nie wiedziałem o tym. Dzięki
andybleaden

19

cd - jest świetny do cofania się o jeden poziom, ale jeśli chcesz cofnąć się o kilka poziomów, sprawdź ten skrypt:

acd_func.sh

Wspaniale. cd --na przykład, aby zobaczyć swoją historię i cd -3cofnąć się o 3 poziomy.


Wow ... link do geocities. Teraz jest adres URL, którego nie widziałem od dłuższego czasu. <wstaw JPK Obi-wan>
Michael Butler

1
Istotą tego komentarza. <jpg Wstaw Yoda>
Donbhupi


5

Ponadto cd ..może zabrać Cię z powrotem do katalogu nadrzędnego katalogu roboczego, a następnie w razie potrzeby komendę można powtarzać, aż dojdziesz do miejsca, w którym chcesz się znaleźć. W rzeczywistości, za każdym razem, gdy jest wywoływane, zabiera cię z powrotem przez drzewo katalogów, które ostatecznie kończyłyby się na /(katalogu głównym) , gdybyś ciągle powtarzał polecenie.

W przeciwieństwie do tego , cd -w rzeczywistości sprawia, że poprzedni katalog roboczy bieżącego katalogu roboczego, (który jest znany jako .) i które dokładnej lokalizacji w systemie plików można znaleźć w pwd.

Więc zarówno cd ..i cd - mogą być przydatne w różnych okolicznościach podczas nawigacji drzewo katalogów, choć nie różnią się w wyżej wymienionych aspektach. Być może najbardziej użytecznym poleceniem po dobrej zabawie z eksperymentowaniem z tymi dwoma poleceniami jest cdpowrót do katalogu domowego.


-1

Najlepszym sposobem na to, aby wrócić, jest cd -jednak to , że jeśli chcesz pominąć wiele poziomów na raz, lepiej użyć cd ..jednego poziomu, cd ../..dwóch, cd ../../..trzech i dalej ... fajnym sposobem na to szybko jest to scenariusz:

#!/bin/bash
printf "Number of folders to move back: "
read TIMES
BACKCHARS=../
BACK=$(for i in `seq $TIMES`; do printf $BACKCHARS; done)
cd $BACK

1
Uruchomienie cdw skrypcie nie wpływa na powłokę nadrzędną. Aby był przydatny, musisz umieścić to w funkcji powłoki.
wjandrea 28.04.17

jak to:up(){ local n="$1"; while ((n--)); do path+='../'; done; cd "$path"; }
wjandrea 28.04.17
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.