Ativar uma confirmação ao excluir arquivos & Pastas com o comando rm

Anonim

A maioria dos usuários de linha de comando sabe que o comando “rm” para remover e excluir arquivos é bastante poderoso, capaz de excluir praticamente qualquer arquivo imaginável dentro do sistema de arquivos – se ele deve ser removido ou não. Depois de adicionar curingas e sudo, rm e srm porque exponencialmente mais potentes e potencialmente perigosos, para usuários avançados que desejam adicionar uma camada de segurança ao recurso rm, eles podem ativar uma caixa de diálogo de confirmação com os comandos rm e srm.Isso também oferece um mecanismo de proteção útil para aqueles que estão aprendendo a linha de comando e desejam colocar uma camada de verificação entre a exclusão instantânea de arquivos e a execução de seus comandos.

Existem duas partes neste truque, a primeira é simplesmente saber o sinalizador adequado para habilitar e usar uma confirmação antes que um arquivo ou pasta seja excluído com rm, e a segunda usa um alias para fazer o mencionado acima remova com confirmação na nova opção padrão para o comando rm. Ambos os truques funcionam no Mac OS X, Linux e na maioria das outras variações do Unix, por isso é amplamente independente do sistema operacional e também funciona com o poderoso comando srm secure remove. Obviamente, isso é destinado a usuários mais avançados que se sentem confortáveis ​​com a linha de comando para começar, pois usar rm e srm não são ferramentas apropriadas para novatos.

Usando o comando rm com confirmação antes de excluir arquivos e pastas

A sintaxe para habilitar uma confirmação antes de remover qualquer arquivo com rm (ou srm) é simplesmente um sinalizador -i, usado assim:

rm -i filename

Por exemplo, se você fosse excluir um arquivo chamado “theSampleFile.zip” e desejasse uma confirmação antes da remoção do comando, você usaria a seguinte sintaxe:

rm -i theSampleFile.zip

Depois de pressionar Enter, você será perguntado se deseja ou não remover o nome do arquivo em questão, com o comando repetindo o arquivo exato antes de excluí-lo da seguinte forma:

% rm -i theSampleFile.zip remove theSampleFile.zip?

Apertar 'y' e retornar responde com um 'sim' para excluir o arquivo, e pressionar 'n' e tecla de retorno responde com um não e o arquivo não será removido.

A sintaxe rm -i funciona até mesmo com -r para obter uma confirmação antes de excluir recursivamente diretórios e conteúdo de arquivo de subpastas contidas:

rm -ir /Example/Folder/

Novamente, você terá que emitir um y ou n antes que o comando seja concluído para cada arquivo individual encontrado no diretório.

Obter a mesma caixa de diálogo de confirmação com srm também usa o sinalizador -i:

srm -i /Example/file.zip

Novamente, você usaria as teclas y e n para confirmar ou negar a remoção de arquivos especificados.

Como habilitar uma confirmação de comando 'rm' por padrão com um alias

Abra seu .bash_profile ou .profile e você pode criar um alias para alterar a sintaxe 'rm' padrão para 'rm -i' para ser o novo padrão.

alias rm='rm -i'

Você pode criar o mesmo tipo de alias com srm assim:

alias srm='srm -i'

Adicionar ambos a linhas únicas dentro do perfil é suficiente, então atualizar o shell permitirá que ambos sejam acessados ​​de bash, zsh, tcsh ou qualquer outro shell que esteja em uso.

Tem alguma outra dica avançada para proteger rm e srm na linha de comando antes de remover arquivos? Deixe-nos saber nos comentários. E se você quiser apenas .

Ativar uma confirmação ao excluir arquivos & Pastas com o comando rm