2017-04-17 4 views
0

J'ai essayé de faire un fichier batch pour lister les fichiers pdf protégés par mot de passe d'un dossier, j'ai plus de 10000 fichiers dans ce dossier et les fichiers protégés sont seulement environ 40. S'il vous plaît voir mon Code ci-dessous:trouver mot de passe protégé pdf à partir d'un dossier

@echo off 
cls 
z: 
cd\ 
for %%X in (*.pdf) do (
    type "%%X" | find "Encrypt" >NUL 
    if errorlevel 0 echo %%X >> D:\pradeesh.txt) 
exit 

dans ce que je reçois tous les fichiers PDF dans ce dossier, quand je change le niveau d'erreur de 1 Je reçois tous les fichiers sans mot de passe. Je veux simplement le résultat inverse, quelqu'un peut-il m'aider?

Répondre

0

Vous pouvez simplement changer votre ligne ERRORLEVEL:

If Not ErrorLevel 1 (Echo %%X)>>D:\pradeesh.txt) 

Sinon, vous pourrez peut-être voir si FindStr lit les fichiers et utilisez simplement:

FindStr/M "Encrypt" Z:\*.pdf>D:\pradeesh.txt