Il y a beaucoup de questions sur comment annuler une command rm
terminée . Dans mon cas, mon rm a commencé à requestr: "Êtes-vous sûr de vouloir supprimer ce file?"
Et j'ai besoin de confirmer pour chacun d'eux. Au lieu de confirmer manuellement "y / n":
Est-ce que je peux mettre "oui" au rest en demandant y / n pour le n'th file? (équivalent à la checkbox "Yes to All" sous Windows) (je connais l'astuce yes | rm
avant de commencer)
Puis-je annuler l'opération en demandant y / n pour le nième file? (sauf pour arrêter la machine :))
Pour accomplir la requête 1, vous aurez besoin d'utiliser un programme plus sophistiqué que yes
pour envoyer y
N nombre de fois, puis passer l'input au keyboard à travers au-delà. Vous ne pouvez pas le faire avec rm
sauf pour toujours requestr ( rm -i
) ou ne jamais requestr ( rm -f
).
Vous pouvez toujours abandonner rm
par
kill
), ou kill -9
). Cela n'annulera pas les opérations de files rm
déjà effectuées, mais elles l'empêcheront d'effectuer d'autres opérations de files. Si le process rm
request actuellement l'input de l'user, il ne dissocie pas activement les files afin de les tuer, ce qui les empêchera de continuer.
GNU rm supporte -i
, ce que je suppose est ce dont vous parlez et request confirmation pour chaque file, mais aussi -I
, ce qui est un peu différent:
-I prompt once before removing more than three files, or when removing recursively. Less intrusive than -i, while still giv‐ ing protection against most mistakes
Quant à savoir s'il est possible d'arrêter une interaction avec rm après son démarrage, il faut le faire avec Ctrl – C .
avec Ctrl + c, vous pourrez annuler l'opération.
Mais si vous regardez dans votre file .bashrc
, vous pouvez commenter l'alias qui force la confirmation, il utilise le paramètre -i
comme expendu dhag.
en vous .bashrc
vous findez une input comme celle-ci:
alias rm='rm -i'
si vous le commentez, votre rm -f
fonctionnera directement
Sous bash
, vous pouvez contourner un alias en ajoutant un \
à la command, alors
rm filename
devient
\rm filename