Liste de fichiers non vide

for %i in (*.txt) do if "%~zi" geq "1" echo %~nxzi > liste.txt
 for /R "c:\Windows" %i in (*.txt) do if "%~zi" geq "1" echo %~nxzi
EQU Égal à
 NEQ Différent de
 LSS Inférieur à
 LEQ Inférieur ou égal à
 GTR Supérieur à
 GEQ Supérieur ou égal à
@Echo Off
 setlocal ENABLEDELAYEDEXPANSION
 Set P1=0
 Set Dossier=%1
 For /R %Dossier% %%I In (*.*) Do Set /A P1=!P1!+%%~ZI/1048
 Echo Le dossier %Dossier% contient %P1% Koctets
De plus, la substitution de références de variables FOR a été améliorée.
Vous pouvez maintenant utiliser la syntaxe optionnelle suivante :
%~I - étend %I en supprimant les guillemets (")
%~fI - étend %I en nom de chemin d'accès reconnu
%~dI - étend %I en lettre de lecteur uniquement
%~pI - étend %I en chemin d'accès uniquement
%~nI - étend %I en nom de fichier uniquement
%~xI - étend %I en extension de fichier uniquement
%~sI - chemin étendu contenant uniquement des noms courts
%~aI - étend %I en attributs du fichier
%~tI - étend %I en date/heure du fichier
%~zI - étend %I en taille du fichier
%~$PATH:I - parcourt les répertoires de la variable
d'environnement PATH et étend %I en nom du
premier fichier reconnu trouvé. Si le nom de la
variable d'environnement n'est pas défini ou
que le fichier n'est pas trouvé par la recherche,
alors ce modificateur étend en chaîne vide
Vous pouvez combiner les modificateurs pour obtenir des résultats composés :
%~dpI - étend %I en lettre de lecteur et chemin d'accès uniquement
%~nxI - étend %I en nom de fichier et extension uniquement
%~fsI - étend %I en nom de chemin complet avec noms courts
uniquement
%~dp$PATH:i - parcourt les répertoires listés dans la variable
d'environnement PATH à la recherche de %I et étend
en lettre de lecteur du premier trouvé.
%~ftzaI - étend %I en DIR comme ligne en sortie
Dans les exemples ci-dessus %I et PATH peuvent être remplacés par d'autres valeurs valides. La syntaxe %~ se termine par un nom de variable FOR valide. Le choix de noms de variables en majuscules comme %I facilite la lecture et empêche toute confusion avec les modificateurs qui ne tiennent pas compte de la casse.
rem --------------------------------------------
rem ce script rechercher les fichiers non vide 
rem   pour un type (extension) donné
rem   dans une directorie donné
rem --------------------------------------------

@Echo Off 

echo extension : %1
echo dossier : %2

setlocal ENABLEDELAYEDEXPANSION 

set /A P1=0 
set fic=%1
set dossier=%2

echo Nettoyage des ERR_NOCONN

for /R %dossier% %%i in (%fic%) do if "%%~zi" geq "1" (
rem echo %%~nxi 
type "%dossier%%%~nxi" |findstr /V "ERR_NOCONN" > "%dossier%%%~nxi_old"
move "%dossier%%%~nxi_old" "%dossier%%%~nxi" 1> nul)

echo Recherche des fichiers non_vide

for /R %dossier% %%i in (%fic%) do if "%%~zi" geq "1" (
echo %%~nxi 
type %dossier%%%~nxi 
echo.
set /A P1=!P1!+1 )

echo Il y a !P1! fichiers non vide

set /A nb_fic=!P1!

if %nb_fic% equ 0 goto TERMINE
goto ERREUR

:ERREUR
Echo "il y a !P1! Pb sur ces serveurs"

:TERMINE
exit /b %nb_fic%

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *