Como destruir uma pasta?

17

Eu quero um comando para destruir completamente o conteúdo de uma pasta / diretório (que pode estar dentro de pastas / diretórios). Também por favor, explique o comando.

    
por Ashu 16.04.2012 / 15:11

6 respostas

24
  1. Instale o pacote secure-delete .
  2. Use o comando srm -r pathname para remover sua pasta e seus arquivos.

As configurações padrão são para 38 (!!!) passagens de sobrescritas, o que é uma imposição extrema de overkill (veja mais informações sobre este here ).

Para o meu uso, eu só quero uma única passagem de dados aleatórios, então eu uso srm -rfll pathname .

Se você quiser criar uma opção de clique com o botão direito do mouse na GUI para arquivos e pastas, use as ações do gnome para chamar um script como este:

#!/bin/bash
if dialog='zenity --window-icon=warning --question --title="Secure Delete" --no-wrap --text="Are you sure you want to securely delete:\n\n     \n\nand any other files and folders selected? File data will be overwritten and cannot be recovered."' 
then /usr/bin/srm -fllrv "$@"| zenity --progress --pulsate --text="File deletion in progress..." --title="Secure Delete" --auto-close
fi 

Se você quiser mais configurações paranóicas, modifique o script acima.

    
por Veazer 16.04.2012 / 15:50
6

Para arquivos que não são diretórios, veja uma maneira mais simples em vez de -exec shred -u {} \; do tipo:

cd to your directory.

então

find . -type f -print0 | xargs -0 shred -fuzv -n 48

isso faz 48 passa recursivamente para o diretório atual em que você cd '.

Espero que isso ajude alguns.

    
por memorysticky 03.06.2012 / 20:23
1

O Shred funciona apenas em arquivos. Você precisa primeiro destruir os arquivos nos subdiretórios dir e depois remover os diretórios. tente

find [PATH_TO_DIR] 

e certifique-se de ver apenas os arquivos que deseja excluir

find [PATH_TO_DIR] -exec shred -u {} \;

remova as pastas com

rm -rf [PATH_TO_DIR]
    
por Ruediger 16.04.2012 / 15:31
1

Você provavelmente quer usar algo semelhante a isto:

find dir -type f -exec shred -fuz {} +
rm -rf dir

O primeiro comando encontra apenas arquivos e os passa para o fragmento (o maior número possível de uma vez - não é necessário iniciar um novo processo de fragmentação para cada arquivo como o \; Finalmente, remova os diretórios também.

    
por user1338062 26.01.2014 / 10:13
1

sudo apt install wipe

$ wipe -rfi dir/*

onde as bandeiras usadas: -r – tells wipe to recurse into subdirectories -f – enables forced deletion and disable confirmation query -i – shows progress of deletion process

    
por cryptoboy 29.03.2018 / 07:30
-1

Quando eu precisar destruir vários arquivos ou um diretório inteiro, eu simplesmente uso shred -vzn 20 ./shredme/*.* , por exemplo, que substitui todos os arquivos com qualquer extensão de arquivo na pasta "shredme". Em seguida, você pode usar o comando padrão rm -rf ./shredme para remover a pasta em si (ou apenas clicar com o botão direito do mouse e excluir a pasta), pois todos os dados foram sobrescritos 20 vezes neste exemplo.

Eu fiz um exemplo rápido disso com um monte de imagens duplicadas como exemplo.

    
por Linuxer 30.03.2016 / 11:23