Eu li há algum tempo (não consigo encontrar a referência) que o uso de um pseudônimo como alias rm="rm -i"
era muito ruim.
Existe evidência histórica ou explicação do senso comum para esse fato?
Eu imagino que isso dá ao usuário o mau hábito de confiar no prompt de confirmação para verificar seu comando, o que pode levar a desastres se ele o fizer em outro perfil que não possua o alias.
Respostas:
Você está certo.
É ruim porque você se acostuma. Se você estiver em um sistema que não o possui, e você
rm
, ele imediatamente será excluído e você estará se perguntando o que está acontecendo.Muitos usuários estão acostumados a fazer SSH em diferentes sistemas; portanto, o uso de vários sistemas diferentes, às vezes sem a configuração de contas de usuário personalizadas (incluindo aliases), é bastante comum.
Em vez disso, use, por exemplo,
alias rmi='rm -i'
e aprenda a usar esse. Se isso não estiver configurado em um sistema diferente, você não excluiu acidentalmente os arquivos e sempre pode voltar a digitar o comando completo.fonte
Como o @Daniel disse, não é prejudicial por si só, além de treinar você a esperar que ele esteja lá. De fato, é a configuração padrão nas máquinas CentOS (e, por extensão, RHEL, presumo - faz muito tempo desde que usei uma) máquinas, e é uma enorme dor no tuchus . Durante o resto do meu tempo naquele show, digitei / bin / rm para evitar a configuração "Linux para pessoas que não deveriam ter acesso root".
fonte
Eu acho que o grande perigo é que as pessoas possam confiar em algo assim para filtrar uma glob. Imagine que você deseja excluir algumas imagens de um diretório, mas não todas:
Você pode usar isso para filtrar a glob manualmente, o que seria completamente razoável. Mas, se você o aliasse e estivesse usando
rm
e por acaso pousasse em uma concha sem esse apelido e tente ... você acabou de excluir todas as suas fotos, oops!Pessoalmente, também acho esse apelido prejudicial à minha pressão arterial;). Mas isso sou só eu.
fonte
Além do que Daniel Beck disse, eu encontrei-me usando
-f
para ignorar o-i
que é potencialmente perigosa, que resulta no usorm -f
erm -rf
desnecessariamente. De alguma forma relacionada: uma maneira de evitarrm -rf
problemas é criar um arquivo chamado "-i", como foi respondido em resposta a esta pergunta: Como faço para impedir rm -rf / * acidental? .Mas, novamente, se esse apelido não estivesse lá, eu não usaria -f, e a coisa toda não será um problema.
fonte
Isso é muito menos prejudicial, com base na minha experiência de trabalho com centenas de usuários no passado:
rm
em algum outro contexto que não possuía essa função ou orm -i
alias.rm
é intocado, deixando outros programas sem medo.O estilo do código é principalmente compatível com sh (exceto o uso
echo .... | tr -d '\012'
para shells anteriores ao bash), fique à vontade para tornar o seu próprio mais específico do bash. Não estou postando para compartilhar o código em si, mas para compartilhar a mudança na experiência do usuário que vem com ele.fonte
rm -i
historicamente (na minha experiência de ter centenas de usuários) resulta em exclusão incorreta de arquivos e que a função incluída treinou os usuários a usar curingas corretos, diminuindo a taxa de erro. Portanto, eu lidei com questões importantes que atormentavamrm -i
e forneci uma solução por conveniência, e o simples fato de os marcadores estarem embaixo da função não os impede de serem relevantes.