Il y a beaucoup de questions sur la façon d' annuler une rm
commande terminée . Dans mon cas, ma RM a commencé à demander: "Êtes-vous sûr de vouloir supprimer ce fichier?"
Et je dois confirmer pour chacun d'eux. Au lieu de confirmer manuellement "y / n":
Puis-je définir "oui" pour le reste tout en étant invité à y / n pour le nième fichier? (équivalent à la case à cocher "Oui à tous" sous Windows) (je connais l'
yes | rm
astuce avant de commencer)Puis-je abandonner l'opération tout en demandant o / n pour le nième fichier? (sauf pour arrêter la machine :))
Réponses:
Pour accomplir la requête 1, vous devrez utiliser un programme plus sophistiqué que
yes
d'envoyery
N nombre de fois, puis passer le clavier au-delà. Vous ne pouvez pas le faire avecrm
sauf de toujours demander (rm -i
) ou de ne jamais demander (rm -f
).Vous pouvez toujours avorter
rm
enkill
), oukill -9
).Cela n'annulera aucune opération de fichier
rm
déjà effectuée, mais cela l'empêchera d'effectuer d'autres opérations de fichier. Si lerm
processus demande actuellement une entrée utilisateur, il ne dissocie pas activement les fichiers, donc le tuer l'empêchera simplement de continuer.la source
yes | head -9 | rm...
d'obtenir 9 (par exemple) oui?{ yes | head -n9; yes n; } | rm -i …
pour supprimer les 9 premiers fichiers, puis répondre «non» pour tous les fichiers restants (et bien sûr, la{ … }
partie pourrait être étendue pour couvrir toute combinaison possible de nombres).rm
lieu de créer des commandes tordues et peu fiables?GNU rm prend en charge
-i
, ce qui, je suppose, est ce à quoi vous faites référence et demande une confirmation pour chaque fichier, mais aussi-I
, ce qui est un peu différent:Quant à savoir s'il est possible d'arrêter une interaction avec rm après qu'elle a commencé, frapper Ctrl- Cdevrait le faire.
la source
avec Ctrl+ cvous pourrez annuler l'opération.
Mais si vous regardez dans votre
.bashrc
fichier, vous pouvez commenter l'alias qui force la confirmation, il utilise le-i
param comme dhag expiré.en vous,
.bashrc
vous trouverez une entrée comme celle-ci:si vous le commentez, votre
rm -f
testament fonctionne directementla source
Sous
bash
, vous pouvez contourner un alias en ajoutant a\
à la commande, afindevient
la source
yes | rm
astuce avant de commencer