Rm recuperação de comando para esta situação

0

Na minha área de trabalho, eu tenho um dir. chamado exame, e eu queria removê-lo do console e escrevi rm * /exam , e aparentemente ele removeu alguns outros arquivos da minha área de trabalho. Por favor, diga-me que há um caminho para a recuperação.

Editar: eu nem sei quais arquivos são removidos, então eu não sei seus nomes de arquivo.

    
por hackio 06.05.2013 / 13:43

3 respostas

2

Dependendo do diretório em que você estava quando você executou esse comando, você provavelmente excluiu os arquivos que estavam lá também. Há algumas ferramentas que usei no passado, mas acho que você pode estar sem sorte.

Dependendo dos tipos de dados, um dos dois programas pode ajudar.

Mas instalá-los provavelmente substituirá os dados que você está tentando recuperar!

Se eu fosse você, faria o download SystemRescueCd gravando-o em um CD ou pen drive USB e inicializaria o sistema com o arquivos usando-o. O SystemRescueCd inclui ferramentas para recuperar arquivos. Eu daria isso uma tentativa.

Referências

por 06.05.2013 / 13:48
1

A maioria dos comandos de linha de comando usa uma lista separada por espaços de arquivos ou pastas como entrada. * significa tudo, portanto, executar rm * /exam significa excluir tudo na pasta atual e excluir /exam . Em outras palavras, você excluiu todos os arquivos (não pastas) da sua área de trabalho. A única coisa que você pode fazer é tentar recuperá-los usando ferramentas como sugerido por @slm.

Você também deve estar ciente de que, mesmo se tivesse executado o comando que queria executar, rm /exam , ele não teria funcionado. Por padrão, rm não exclui diretórios, apenas arquivos. Para usá-lo para excluir um diretório, ele precisa do sinalizador recursivo ( -r ). Portanto, para excluir o diretório /exam , você precisaria executar rm -r /exam .

Uma maneira de se proteger desse tipo se, no futuro, o erro for tornar rm um alias para rm -i ou rm -I , então você será solicitado a confirmar as exclusões de arquivos. Na página rm man:

   -i     prompt before every removal

   -I     prompt  once  before removing more than three files, or
          when removing recursively.   Less  intrusive  than  -i,
          while still giving protection against most mistakes

Para tornar rm um alias para rm -i , adicione esta linha ao arquivo ~/.bashrc :

alias rm='rm -i'
    
por 06.05.2013 / 14:18
0

Algumas configurações armazenam arquivos excluídos, verifique se esse é o seu caso (duvido). Caso contrário, escreva para aprender que o Unix faz exatamente como foi dito, ele não tenta adivinhar você. Ever.

    
por 06.05.2013 / 13:57