batch sous repertoire dans IF EXIST - Shell/Batch - Programmation
Marsh Posté le 01-05-2006 à 20:07:33
Code :
|
Pour la deuxième question, fais un
Code :
|
au lieu de if exist pour comprendre.
Marsh Posté le 01-05-2006 à 20:23:50
Je dois faire une erreur, c'est sur.
For %%i in ("D:\KL-82\"*.dbrcp) do (
if exist D:\KL82\%%~nxi
if exist D:\KL82\SP\%%~nxi echo %%i
)
pause
ceci ne fonctionne malheureusement pas.
Marsh Posté le 01-05-2006 à 20:40:28
Ma faute ...
For %%i in ("D:\KL-82\"*.dbrcp) do (
if exist D:\KL82\%%~nxi echo %%i
if exist D:\KL82\SP\%%~nxi echo %%i
)
pause
mais n'y a t'il pas d'extention de commande ? en tous cas, pas d'après ce que j'ai lu en faisant For /?
Merci tout de même pour le renseignement et pour la réponse rapide, nglechau.
Marsh Posté le 01-05-2006 à 21:02:25
Euh, c'est quoi ton problème actuellement ? Que retourne le script désormais ?
Que veux-tu dire par "n'y a t'il pas d'extention de commande" ?
Marsh Posté le 03-05-2006 à 21:17:27
Le problème est résolu, cela fonctionne parfaitement. Merci beaucoup nglechau pour ton aide. Je recherche encore une fonction permettant de repérer les noms de fichier de 9 lettres .
exemple : assistant.txt
Peut être vais je trouver la solution en parcourant le forum.
Marsh Posté le 04-05-2006 à 13:17:16
C'est tout simple : une chaîne a 9 caractères si le 9è existe et pas le 10è.
Regarde l'aide de
set
pour %VAR:~x,y%
Marsh Posté le 01-05-2006 à 19:26:26
Je me permet de poser une question sur ce forum car je ne trouve pas la solution
malgrés mes recherches. J'ai énormement appris sur votre forum et étant
passionné d'informatique, j'ai horreur de rester sur un echec et là, je tourne
en rond.
Voici un extrait de mon Fichier Batch que j'ai créé un peu grâce
à la lecture d'explication sur votre forum.
Le probleme se situe au niveau des sous repertoires
For %%i in ("D:\KL-82\"*.dbrcp) do (if exist D:\KL82\%%~nxi del %%i) > f:\resultat.txt
For %%i in ("D:\KL-82\"*.dbrcp) do (if exist D:\KL82\SP\%%~nxi del %%i) > f:\resultat.txt
Comment puis je écrire ces deux lignes en une seule ligne de commande ?
Je vous demande ceci car mon fichier batch ne se limite pas à cette recherche
et qu'elle me sera bien utile.
Les sous repertoires fonctionnent bien dans 'ensemble', mais pas dans la commande.
exemple : For /R pour recherche dans 'repertoire et sous repertoire',
, mais ne fonctionne pas dans if existe.
Merci d'avance pour votre aide