Eu não estou familiarizado com o comando que você usou, mas se você não tiver saído do vi
, o comando U
deverá desfazer a alteração.
Caso contrário, em ordem decrescente de desejo:
-
Em alguns casos, uma versão anterior do arquivo será salva como
filename.ext~
(provavelmente não é o seu caso ou você nem teria postado, mas ainda vale a pena tentar). -
Versões anteriores do arquivo e sua troca podem ser recuperadas usando extundelete , se seu sistema de arquivos permitir (ext3 ou ext4 ). Se apenas a troca for recuperável,
strings
pode ser usado para extrair grandes faixas de texto. Você ainda precisará remontá-los, mas está muito longe de reescrever tudo do zero. -
Caso contrário, pode ser possível recuperar grandes partes do texto se você lembrar de algumas palavras ou frases-chave. Isso pode ser uma operação bastante longa. Você pode filtrar a partição inteira para
strings
viadd
e enviar a saída viassh
para outra máquina, para não sobrescrever o espaço livre do disco local (se você tiver outra partição disponível, use-a) ). -
Da mesma forma, se o sistema não foi reinicializado, você tem acesso root, e o pseudo-arquivo / proc / kcore é de tamanho razoável, você pode extrair texto bruto com
strings
e copiá-lo para um Arquivo. Entãogrep
será seu amigo. Possivelmente, outras formas de acessar a memória estão disponíveis para você.