passage d'un .bat de NT4 a 98

passage d'un .bat de NT4 a 98 - Programmation

Marsh Posté le 20-06-2001 à 08:26:48    

sous NT4 je fais
 
 
@ echo off
 
echo Sauvegardes de vos documents dans le dossier "nomades" du serveur commun.
echo Veillez patienter.
echo ...
 
echo Sauvegarde du >> c:\sauvegarde.log
date /t >> c:\sauvegarde.log
echo à >> c:\sauvegarde.log
time /t >> c:\sauvegarde.log
echo . >> c:\sauvegarde.log
 
xcopy /e c:\mesdoc~1\* \\srv1\nomades$\%username%\ >> sauvegarde.log
 
echo . >> c:\sauvegarde.log
echo . >> c:\sauvegarde.log
 
echo Sauvegarde terminee
echo Consultez "c:\sauvegarde.log" pour plus de details
 
 
mais sous 98 ca marche pas :
- le /t pour date et time
- le username.
comment je fais ? il faut que j'ai la date et l'heure de la sauvegarde et un identifiant d'utilisateur tel que le username, et j'ai pas trouvé de solution.

Reply

Marsh Posté le 20-06-2001 à 08:26:48   

Reply

Marsh Posté le 20-06-2001 à 08:37:40    

C'est parce qu'il y aune faute d'orthographe à :
echo Sauvegardes de vos documents dans le dossier "nomades" du serveur commun. :D
 
Plus sérieusement :
ces commandes n'existant pas sous 98, la solution la plus simple est d'écrire un petit programme en C (par exemple) qui va :
1) créer l'en tête dans ton fichier sauvegarde.log (date et heure)
2) récupérer le nom d'utilisateur (j'avoue ne pas savoir comment on fait, mais il doit y avoir une API windows qui le fait. voir : http://www.allapi.net/api/apilist.php ) et qui crée soit la variable d'environnement username, soit le stocke dans un fichier texte que tu réutilise dans ton batch.
A+
JPA
 
P.S. Si j'ai bien compris ton fichier sauvegarde.log n'est jamais remis à 0. Tu n'as pas peur que sa taille devienne trop importante ?

Reply

Marsh Posté le 20-06-2001 à 08:41:20    

Je reposte :
As tu essayé :
 
xcopy /e "c:\mes documents\* \\srv1\nomades$\%username%\" >> sauvegarde.log  
 
Normalement, celà marche en ligne de commande  donc en batch aussi et celà t'évitera un pb si le nom court de "mes documents" n'est pas MESDOC~1
 
A+

Reply

Marsh Posté le 20-06-2001 à 14:22:04    

j'essaierai.
le C j'y ait penser mais pas pratique (script de demarage).
 
comment je pourrais faire pour remettre le fichier log a zero ? (j'y avais pas penser mais c'est pas con).

Reply

Marsh Posté le 20-06-2001 à 14:41:23    

pour remettre le fichier log a zero, tu met un seul chevron  
eg:
 
dir >>fichier.txt   // ouvre le fichier "fichier.txt" et ecrit  
                        a la suite
 
dir > fichier.txt   // efface le contenu du fichier avant  
                       d'ecrire

Reply

Marsh Posté le 20-06-2001 à 16:20:37    

cool merci !

Reply

Sujets relatifs:

Leave a Replay

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