Há muitas perguntas sobre como desfazer um rm
comando finalizado . No meu caso, minha empresa começou a perguntar: "Tem certeza de que deseja excluir este arquivo?"
E preciso confirmar para cada um deles. Em vez de confirmar manualmente "y / n":
Posso definir "yes" para o restante enquanto me solicitam y / n para o enésimo arquivo? (equivalente à caixa de seleção "Sim para todos" no Windows) (conheço o
yes | rm
truque antes de iniciar)Posso interromper a operação enquanto estou solicitando y / n para o enésimo arquivo? (exceto para desligar a máquina :))
Respostas:
Para realizar a solicitação 1, você precisará usar um programa mais sofisticado do
yes
que enviary
N vezes e depois passar a entrada do teclado além disso. Você não pode fazer isso comrm
exceção de sempre perguntar (rm -i
) ou nunca perguntar (rm -f
).Você sempre pode abortar
rm
porkill
) oukill -9
).Isso não desfará nenhuma operação de arquivo
rm
que já tenha sido executada, mas impedirá a execução de outras operações de arquivo. Se orm
processo estiver solicitando a entrada do usuário no momento, ele não está desvinculando ativamente nenhum arquivo, portanto, matá-lo simplesmente impedirá que continue.fonte
yes | head -9 | rm...
obter 9 (por exemplo) sim?{ yes | head -n9; yes n; } | rm -i …
para excluir os primeiros 9 arquivos e depois responder "não" para os arquivos restantes (e, é claro, a{ … }
peça pode ser expandida para cobrir qualquer combinação possível de números).rm
vez de criar comandos distorcidos e não confiáveis?O GNU rm suporta
-i
, que eu assumo é o que você está se referindo e pede confirmação para cada arquivo, mas também-I
, que é um pouco diferente:Se é possível interromper uma interação com a rm após o início, pressione Ctrl- Cdeve fazê-lo.
fonte
com Ctrl+ cvocê poderá cancelar a operação.
Mas se você procurar no seu
.bashrc
arquivo, poderá comentar o alias que força a confirmação, ele usa o-i
parâmetro como dhag esperado.em você
.bashrc
você encontrará uma entrada como esta:se você comentar, sua
rm -f
vontade funcionará diretamentefonte
Em
bash
, você pode ignorar um alias acrescentando\
a ao comando, paratorna-se
fonte
yes | rm
truque antes de iniciar