Bonsoir,
La commande attrib toto.txt fonctionne en commande en ligne.
Par contre dans un batch j'ai un message d'erreur, voici le code
if attrib toto.txt echo "c'est un fichier archivé !"
....
merci pour la réponse
Est-ce que le code fonctionne :
set compteur=0
compteur = compteur +1
Je compte sur votre collaboration pour avancer dans mes trucs.
A très bientôt
Saïd
Bonjour,
Je souhaiteraix savoir si un fichier est archivé ou non. Le code ci-dessous fourni dans la cette liste ne fonctionne pas sur ma machine:
attrib toto.txt
if %ERRORLEVEL% 1 echo fichier archivé
....
voici le message d'erreur :
1 était inattendu.
Merci et très bonne journée
Saïd
Bonjour,
Je souhaiteraix savoir si un fichier est archivé ou non. Le code ci-dessous fourni dans la cette liste ne fonctionne pas sur ma machine:
attrib toto.txt
if %ERRORLEVEL% 1 echo fichier archivé
....
voici le message d'erreur :
1 était inattendu.
Merci et très bonne journée
Saïd
Maître bachi au secours je ne sais pas comment résoudre mon problème. Avis ) ceux qui le connaisse, parlez lui de mon prob. vous serez bien sympathique.
Pour le moment je n'ai aucun résultat probant. Toutefois, je remercie les personnes qui ont bien voulu m'apporter de l'aide.
A toute.
Saïd
La seconde est facile à utiliser, mais n'existe que sous Win2K et +.
Elle renvoie directement le code de retour de l'application (le fameux int main(.., cher à Emmanuel Delahaye )
La première est vraiment un *niveau* d'erreur. En fait, elle est équivalente à
if %ERRORLEVEL% >= 1
. Disponible sous DOS depuis les premières versions.
Re salut,
ce code ne fonctionne toujours pas.
attrib toto.txt
if ERRORLEVEL 1 echo fichier archivé
Le message n'est pas affiché alors que le fichier est bien archivé. J'ai tapé en mode commande
echo %errorlevel%
le système répond tours 0 quelque soit l'état de l'attibut archive..
A mon avis il faut abandonner la solution du errorlevel car il n'a aucun impact sur la commande attrib.
Je suis conscients que DOS remonte à loin, mais je compte toujours sur vous pour trouver cette solution.
Bonne nuit
Saïd
Salut Zeb.
Je lis toujours avec plaisir ce qui est écrit. Je suis dans l'impossibilité d'écrire le code entre les balises.
Bref, reournons à nos moutons.
Pour info je n'ai toujours pas trouvé comment savoir si un fichier est archivé ou non. A mon avis il faudrait trouvé un moyen pour réécrire la commande attrib qui enverrai 1 lorsque le fichier est archivé ou 0 dans le cas contraire.
Merci pour vos différentes propositions.
Saïd
ATTRIB toto.txt | GREP -qs ^A
IF %ERRORLEVEL%==1 THEN ECHO Fichier archivé
Ce code ne fonctionne pas. Voici le message d'erreur :
grep n'est pas reconnu en tant que commande interne ou externe, un programme exécutable ou un fichier de commandes.
Après des différentes recherches sur internet j'ai découvert que c'est une commande unix.
remarque : désolé pour les balises, je ne peux vraiment les mettre, un jour Zeb comprendra peut-être pourquoi c'est ainsi.
Bonne soirée les amis.
Saïd
j'ai téléchargé grep.exe, ça ne fonctionne toujours pas. Par contre je n'ai plus le message d'erreur. Dans tous les cas l'affichage de %errorlevel% me retourne la valeur 0 même en désarchivant toto.txt
Remarque version du windows xp familial
Salut à tous,
Merci encore pour votre aide. Ca fonctionne très bien.
J'essaie maintenant de comptabiliser les fichiers archivés ayant l'extension xls du répertoire c:\tests. Mais, le code ci-dessous me renvoie une valeur correspondant au nombre de fichiers contenus dans ce répertoire.
Merci pour vos suggestions.
Saïd
[
REM PROGRAMME COMPTABILISANT LES FICHIERS ARCHIVES
@echo off
cls
REM DECLARATION DE LA VARIABLE CONTENANT LE NOMBRE DE FICHIERS ARCHIVES
set /a compteur=0
for %%f IN (c:\tests\*.xls) do (
attrib %%f | GREP -qs ^A
if %errorlevel%==0 set /a compteur+=1
)
@echo %compteur% fichier archivé(s)
pause
set compteur=
]