Comment trouver et supprimer tous les fichiers vidéo de tous les lecteurs à l'aide d'un fichier de traitement par lots

-1

Je souhaite rechercher et supprimer * .mp4 * .mpeg, * .mkv, * .flv, * .avi (tous les fichiers vidéo) de tous les lecteurs (C, D, E, F) ou de n'importe où sur mon ordinateur, dans n'importe quel répertoire ou sous-répertoire, en utilisant BATCH File. Mon système d'exploitation est Windows XP.

Vinayak Shinde
la source
Hmm, j'ai jeté ensemble un fichier batch et cela a fonctionné à un moment donné, mais quand j'ai nettoyé un peu, ça a cessé de fonctionner. J'ai annulé les modifications apportées après son fonctionnement et je suis revenu au point où il fonctionnait auparavant, mais cela ne fonctionnerait toujours pas. ఠ_ ఠ Ordinateurs stupides avec leurs comportements indéterministes intermittents. ¬_¬ Je vais essayer de le réparer…
Synetech

Réponses:

1

for %%drive in (C D E F) do (
    for /R %drive:\ %%f in (*.mp4 *.mpeg *.mkv *.flv *.avi) do (
        @echo del "%f"
    )
)

( Documentation )

Je n'ai aucun moyen de tester cela maintenant. Il suffit de l'exécuter et de voir si tout se passe bien. Retirez ensuite le @echo et lancez-le à nouveau.

David Foerster
la source
Bonjour David, Merci pour votre réponse, j'essaie d'utiliser cette commande en utilisant un fichier de commandes mais rien n'est arrivé Le fichier de commandes a été exécuté mais ne montre aucun résultat. J'ai Windows XP Prof.2002 SP3 OS.
Vinayak Shinde
Pourriez-vous reproduire le message d'erreur, s'il vous plaît? J'ai écrit mon dernier script batch non-trivial il y a des années et j'ai probablement inclus une sorte de syntaxe non valide.
David Foerster
Bonjour David, Après avoir exécuté le fichier de commandes, il ne présente aucune erreur. C'est seulement ouvrir et fermer en une fraction de seconde. Donc, je suis également incapable de comprendre l'erreur.
Vinayak Shinde
Vous devez ouvrir une fenêtre d’invite de commande ( Windows + R , entrer cmd.exe et appuyez sur Revenir ou cliquez sur OK) et exécutez le fichier de commandes ou la séquence de commandes à partir de là. Il restera ouvert après.
David Foerster
"% lecteur était inattendu à ce moment" est l'erreur et après cela la commande s'exécute sans erreur, mais aucun fichier n'est supprimé.
Vinayak Shinde
1

Tout d’abord, il pourrait être très dangereux de supprimer aveuglément des fichiers avec un fichier de commandes car cela effacerait tout et n'importe quoi. Et bien que ce soit apparemment votre objectif, vous devez savoir que cela détruirait également les fichiers faisant partie du système d'exploitation (Windows est livré avec quelques vidéos ici et là), ainsi que tous les programmes et jeux contenant des fichiers vidéo. Si votre objectif est de libérer de l'espace, il existe de meilleures façons de le faire (en plus, toutes les vidéos ne sont pas volumineuses).

Quoi qu’il en soit, après que ma version initiale a magiquement cessé de fonctionner sans raison apparente (oui, j’ai essayé de tout rendre compte), j’ai fini solution de contournement . Le seul inconvénient à utiliser pushd est que si vous abandonnez le fichier de commandes, vous vous retrouverez dans le lecteur dans lequel il se trouvait lorsque vous avez appuyé sur Ctrl + Pause .

Au lieu de tout effacer aveuglément, je l’ai fait pour qu’il construise un fichier batch secondaire ( delmovie.bat ) que vous pouvez parcourir pour vous assurer de ne rien conserver. Ensuite, vous pouvez simplement exécuter le fichier de commandes généré pour les supprimer. Cela prend quelques secondes de plus mais est beaucoup plus sûr.

@echo off
echo @echo off > delmovie.bat
for %%i in (C:\Users C:\Videos D:\ E:\ F:\) do (
  pushd %%i
  for /r %%j in (*.mp4 *.mpeg *.mkv *.flv *.avi) do (
    echo del "%%j" >> %~dp0delmovie.bat
  )
  popd
)

Cette version exclut les répertoires système contenant une liste blanche et non une liste noire. Au lieu d'exclure les répertoires que vous souhaitez ignorer, elle ajoute ceux que vous souhaitez analyser (l'inverse serait un peu plus complexe fournissez un script pour le faire si vous en avez besoin). J'ai ajouté c:\videos exemple de la façon dont vous pouvez ajouter vos propres répertoires si nécessaire (cela ne fait pas de mal à partir c:'videos si vous n’avez pas un tel répertoire).

Synetech
la source
Merci beaucoup. Cela fonctionnera pour moi. De toute façon, ne supprimez aucun fichier vidéo lié aux fichiers système en modifiant quoi que ce soit dans ce code. Comme make read uniquement pour C: \ Program Files & amp; C: \ dossier Windows. Comme ça.
Vinayak Shinde