annullare rm di Linux? [duplicare]


31

Possibile duplicato:
comando cestino UNDO LINUX

Ciao,

Esiste un modo semplice per annullare un rmcomando?

La domanda è puramente teorica; Non ho MAI cancellato il registro di una coda di benchmark che ha impiegato un'intera ora di pranzo per essere eseguito.



1
... o almeno strettamente correlato, anche se la domanda stessa è formulata per essere un po 'più generale
Jonik,

Risposte:


33

Su Ubuntu o simili:

$ sudo apt-get install trash-cli
$ alias rm=trash

Quindi inserisci tale alias in .bashrc o nello script di accesso appropriato per la tua shell preferita.

Il trash-clipacchetto è un'interfaccia della riga di comando per lo stesso cestino che GNOME, KDE e altri usano. Quindi tutto ciò che elimini tramite il trashcomando può essere ripristinato da GNOME / KDE e viceversa.

Gli altri comandi nel trash-clipacchetto sono trash-list, trash-emptye restore-trash.


11
+1 per trash-cli, -1 per aliasing rm.

1
Cosa c'è di sbagliato con l'aliasing rm? Mi piace avere un pulsante Annulla per le mie eliminazioni accidentali, anche sulla riga di comando. Inoltre, trash-clifacilita esplicitamente questo accettando (e ignorando) molte rmopzioni GNU . Inoltre, l'OP ha chiesto un modo per annullare rm. Questa soluzione non risponde correttamente alla domanda senza l'alias.
Ryan C. Thompson,

15
@Ryan: Perché ti abitui a significare qualcosa di diverso da quello che fa veramente il comando rm, e poi fai un errore quando non è alias. Abituati invece ad usare il comando cestino e ciò non può accadere.

5
@Roger: Oppure ... puoi alias rme quindi ipnotizzare te stesso dimenticando di averlo fatto. In questo modo puoi continuare a usarlo rmcome se fosse definitivo .... ma se scivoli su e vai "oh no !!" non sei completamente fregato. (cioè non fare affidamento sulla sua funzionalità "recuperabile")
mpen

@RyanThompson: questo è un bel consiglio, ma come configurarlo per funzionare anche con sudo rm?
Takeshin

15

La risposta tradizionale è:

Si recupera il file dall'ultimo backup. Hai un backup recente, vero?

perché su molti filesystem unix questo semplice non è possibile o è molto difficile.

Come altri hanno notato, questo non è più il problema generale, ma non fare errori di questo tipo è ancora l'approccio preferito.


5
Ho davvero intenzione di mettere tutti i miei script su un repository bzr con impegno orario.
Adam Matan,

3
La risposta moderna è: recuperare il file da un'istantanea recente del filesystem. :-)
Knweiss,

Questa è una bella domanda ... Di solito non faccio backup di ~ / Download ... e ho cancellato il mio contenuto passando rm -fr *(1)*... ogni file è sparito. Quindi avere i backup non è sempre la soluzione. I suoni del cestino si raffreddano.
m3nda,

No, avere i backup è SEMPRE la soluzione. Solo perché hai scelto di non eseguire il backup di qualcosa, non fare il backup non è la soluzione, ti rende sciocco, per non eseguire il backup di qualcosa.
djsmiley2k - CoW

4

Per prevenire errori futuri ipotetici, potresti voler alias rm-rm -i ...


6
In genere penso che ciò non impedirebbe mai alcun errore (la 'y' viene digitata in modo abbastanza automatico), ma consuma molto tempo e incoraggia l'uso di He-Whose-Name-Must-Not-Be-Menzionato rm -rf.
Adam Matan,

Ti dà comunque una possibilità in più prima di rovinare le cose. In genere ho solo lsgli stessi parametri prima, quindi posso vedere cosa succederà.
Rich Bradshaw,

Di solito elimino i file di proposito, mi rendo conto di aver bisogno di quei file in seguito. Così interattivo non aiuterebbe
andrewtweber il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.