Bonjour, je cherche à écrire un fichier batch pour vérifier s'il y a des fichiers de tout type dans un dossier donné.
Jusqu'à présent, j'ai essayé ce qui suit
if EXIST FOLDERNAME\\*.* ( echo Files Exist ) ELSE ( echo "Empty" )
Je peux le faire fonctionner si je connais l'extension de fichier telle qu'un fichier txt avec le follwing
if EXIST FOLDERNAME\\*.txt ( echo Files Exist ) ELSE ( echo "Empty" )
Merci de votre aide
Pour vérifier si un dossier contient au moins un fichier
>nul 2>nul dir /a-d "folderName\*" && (echo Files exist) || (echo No file found)
Pour vérifier si un dossier ou l'un de ses descendants contient au moins un fichier
>nul 2>nul dir /a-d /s "folderName\*" && (echo Files exist) || (echo No file found)
Pour vérifier si un dossier contient au moins un fichier ou un dossier.
Notez l'ajout de /a
option pour permettre la recherche de fichiers/dossiers cachés et système.
dir /b /a "folderName\*" | >nul findstr "^" && (echo Files and/or Folders exist) || (echo No File or Folder found)
Pour vérifier si un dossier contient au moins un dossier
dir /b /ad "folderName\*" | >nul findstr "^" && (echo Folders exist) || (echo No folder found)
Pour les fichiers d'un répertoire, vous pouvez utiliser des choses comme:
if exist *.csv echo "csv file found"
ou
if not exist *.csv goto nofile
Vous pouvez utiliser ceci
@echo off
for /F %%i in ('dir /b "c:\test directory\*.*"') do (
echo Folder is NON empty
goto :EOF
)
echo Folder is empty or does not exist
Tiré de ici .
Cela devrait faire ce dont vous avez besoin.