Script de commande ( DOS ou W2K ) / Fichier & Variable ...

Script de commande ( DOS ou W2K ) / Fichier & Variable ... - Programmation

Marsh Posté le 28-03-2001 à 17:52:18    

Bon, je vais essayer d'être clair.
 
J'ai un fichier (liste.txt) qui contient un mot par ligne.
 
Le but est de donner à une variable toto la valeur de la premiere ligne de ce fichier :??: , lancer un prog avec cette variable comme argument (ca je sais faire ;)) puis idem avec toto=seconde ligne, etc ...
 
Je voulais me servir de la commande  
more /E +n liste.txt
ou n = numero de ligne mais je n'arrive pas à affecter le résultat à la variable :??:
 
Le tout avec l'interpreteur de commande de Win 9x ou 2K - plus de commandes sous 2K -
 
PS : Je sais qu'avec n'importe quel VRAI language de prog c'est easy (enfin pour vous) mais la soluce recherché est en interpreteur de commande !


---------------
http://www.hardfr.org/ [HardFr]
Reply

Marsh Posté le 28-03-2001 à 17:52:18   

Reply

Marsh Posté le 28-03-2001 à 18:55:59    

Tu peut pas le faire en vbscript ??

Reply

Marsh Posté le 29-03-2001 à 00:25:31    

Je dois pouvoir faire ca mais faut que j'ai jamais programmé en VB ... :ouch:
Mes antécédants sont Pascal & C, il y a quelques années ... :(
 
EXPLICATION DU PB ;
 
Le but est de faire un sauvegarde "intelligente" d'un disque (en vue de back-up sur CD) mais en placant dans chaque repertoire racine, copié, un zip correspondant à son contenu, il y a un tri a faire suivant le nom des fichiers présents ...
 
Pour l'instant, j'ai l'arborescence en double et je crée le zip au bon endroit, en me servant de variables entrées par l'utilisateur pour connaitre les fichiers à enregistrer, les memes qui me servent à nommer le zip.
 
Variables :
- Nom du client / repertoire  
- Date d'archive - Critere de tri sur le nom du fichier
 
L'incovenient de cette manip c'est qu'il y a une entrée par repertoire racine <=> ZIP / Entrée User.
 
Si j'arrive à récuperer la liste des repertoires automatiquement dans une/des variable(s), je peux faire sauter l'intervention Utilisateur, qui n'a pas que ça à faire que de la saisie fastidieuse :(
 
Vu que le nom d'un client correspond à un répertoire, j'espère pouvoir utiliser un script du genre :
 
DIR /B > liste.txt  
more /E +n liste.txt  
ou n = numero de ligne à partir de laquelle le listing est affiché
 
Si j'arrive à prendre les lignes les une après les autres,  
je devrai y arriver mais :(
 
more /E +n liste.txt | set ZZZ=%1
 
=> le résultat du more ne s'enregistre pas dans ZZZ :(
 
Pour la date, cela fait une entrée par mois, bien moins contraignant ...
( C'est la deuxieme étape ;) )
 
 
Je suis ouvert à toute remarque et/ou critique, pas trop à la fois qd meme ;)

 

[edit]--Message édité par bruno31--[/edit]


---------------
http://www.hardfr.org/ [HardFr]
Reply

Marsh Posté le 29-03-2001 à 01:50:54    

Ca peut peut etre se faire avec un batch.
C'est un truc comme ca que tu cherches?
========================================
for %%v in (*.*) do call echo %%v% > nul
=========================================
ou tu remplace le echo qui suit call par la prodedure que tu veux lancer, laquelle peut etre un autre batch plus complexe qui teste si effectivement le fichier file en argument est a zipper...
Ca la lancera sur le chaque fichier du repertoire.
A+,

 

[edit]--Message édité par gilou--[/edit]


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 29-03-2001 à 02:05:21    

Au fait, tu as droit d'utiliser Perl? parce que ca c'est un langage de script qui tourne assez bien sous DOS, et qui est efficace.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 29-03-2001 à 12:25:50    

j'ai pas perl !!
 
a quoi correspond le %%v :??:  
 
pourquoi un double %% ?


---------------
http://www.hardfr.org/ [HardFr]
Reply

Marsh Posté le 29-03-2001 à 12:29:02    

C'est la pratique usuelle en DOS/Batch pour indiquer une variable de type liste, mais je pense pas que ca soit obligatoire.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 29-03-2001 à 12:40:35    

j'approfondirai ca Lundi, la je suis en congé ;)
 
Merci je ferai remonter le topic si je galere  
 
A+


---------------
http://www.hardfr.org/ [HardFr]
Reply

Marsh Posté le 29-03-2001 à 22:13:07    

>j'ai pas perl !!  
 
Ca se downloade dans toute bonne cremerie internet... :)
Et ca marche tres bien sous DOS.
A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed