Jak cofnąć w Bash?

2

Przypadkowo skopiowałem cały katalog domowy do jednego z moich podkatalogów, powodując przekroczenie limitu miejsca na dysku na serwerze.

A może ktoś wie jak cofnąć polecenie w ogóle?

Chuck testa
źródło
1
Oprócz „Oto perełka, dzieciaku. Zdobądź lepszy komputer”. programers stary UNIX i admini lubią mówić „można odzyskać z kopii zapasowej. Możesz zrobić mieć kopię zapasową nie?” . Chociaż w tym przypadku tylko oryginalna zawartość podkatalogu może zostać utracona.
dmckee,

Odpowiedzi:

5

Bash to tylko interpreter wiersza poleceń - robi to, co mu każesz i nie ma programu pomocniczego cofania. Najlepiej po prostu usuń podkatalog za pomocą czegoś takiego:

chmod -R 775 ~/yoursubdir && rm -rf ~/yoursubdir

źródło
Czy potrafisz wyjaśnić, co robi pierwsza część tego polecenia? Dzięki :)
Chuck Testa
Pierwszą częścią jest ustawienie uprawnień rwx (odczyt, zapis, wykonywanie) dla użytkownika i grupy - dla wszystkich plików i folderów, aby mieć pewność, że po usunięciu nie wystąpią problemy z uprawnieniami.
1

Jestem prawie pewien, że nie ma czegoś takiego. Gdyby tak było, byłoby to dość interesujące.

W twoim przypadku możesz po prostu usunąć podkatalog

rm -rf /path/to/subdirectory

Uważaj jednak na to polecenie, ponieważ może ono w pełni usunąć dowolne pliki z podkatalogu bez żadnego potwierdzenia. ;)

Sójka
źródło
1

Jeśli chodzi o powłokę, jesteś cofnięty. Przeciwieństwem kopiowania jest usuwanie (rm), więc usuń kopie.

Polecam zainstalowanie pakietu trash-cli, a następnie ustawienie tych aliasów Bash:

alias rm='trash'
alias rrm='rm -i'

Oczywiście w twoim przypadku, ponieważ brakuje Ci miejsca na dysku, prawdopodobnie nie chcesz najpierw usuwać plików. Mimo to dobrą praktyką jest używanie śmieci.

blujay
źródło