Ativar uma confirmação ao excluir arquivos & Pastas com o comando rm
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 .