IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

[batch] copier un fichier log de la veille chaque jour.


Sujet :

Scripts/Batch

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut [batch] copier un fichier log de la veille chaque jour.
    Bonjour à tous

    Je suis entrain de faire un fichier bat pour copier le fichier log de la veille d une application.

    Le répertoire source (répertoire log de l'application) contient 31 fichiers sur lesquels l'application repasse pour inscrire les log du jour en boucle j'ai donc uniquement un historique de 31 glissant plus ou moins (mois de de 30, 29 et 28)...
    voici comment sont nommés ces fichiers Tracer01.log .... Tracer31.log

    je cherche donc juste a copier le ficher de la veille dans un autre répertoire en le renommant comme suit :
    TracerJJ_mm_aaaa.log

    j'ai commencé mon fichier comment suit je rencontre juste un problème dans mes conditions pour tester le cas du premier jour du mois ou la date de veille et soit le 31 ou 30 ou 28 ou 29.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    echo on
    REM copy e:\temp\test\*.* e:\temp\test2\*.*
    
    REM repertoire source
    set cpsource=C:\s1\
    REM repertoire destination
    set cpdest=C:\d1\
    set racine=Tracer
    
    REM date du jour
    set j_date=%date%
    REM variable jour, mois, annee 
    set jour=%j_date:~0,2%
    set mois=%j_date:~3,2%
    set annee=%j_date:~6,4%
    set vj = jour
    set vm = mois
    
    if %jour:~0,1%==0 set /a vj=%jour:~1,1%
    if %mois:~0,1%==0 set /a vm=%mois:~1,1%
    
    if %vj% LSS 2 set /a vm=%vm%-1
    if %vm% LSS 2 ( set /a annee=%annee%-1 
    set /a vm=12)
    
    rem if %vj% EQU 1 ( set dernierj=31
    	REM dernier jour du mois de avril, juin, septembre, novembre
    	if %vm% EQU 4 ( set /a dernierj=30)
    	if %vm% EQU 6 ( set /a dernierj=30)
    	if %vm% EQU 9 ( set /a dernierj=30)
    	if %vm% EQU 11 ( set /a dernierj=30)
    	set res_bix=1
    	REM dernier jour du mois de fevrier
    	if %vm% EQU 2 ( set /a res_bix=0
    	set /a div_annee = %annee%/4
    	set /a ret_div = %div_annee%*4
    	set /a res_bix = %annee%-%ret_div%
    	set /a dernierj=28 )
    	if %res_bix% EQU 0 ( set /a dernierj=29 )
    rem ) fin du premier si pour vj est égale à 1
    
    set /a vj=%dernierj%
    
    REM DEBUG
    echo j_date %j_date% jour %jour% mois %mois% annee %annee%
    echo vj %vj% vm %vm%
    echo res_bix %res_bix% div_annee %div_annee% dernierj %dernierj%
    echo racine %racine%
    
    pause
    
    set fich=%racine%%vj%.log
    set fich2=%racine%%vj%_%vm%_%annee%.log
    echo %fich% %fich2%
    
    set source=%cpsource%%fich%
    set dest=%cpdest%%fich2%
    echo %source%
    echo %dest%
    
    REM copie du fichier log :
    copy %source% %dest%
    
    pause 
    
    echo on

    j'ai mis ces deux lignes en commentaires pour le moment car elle font planté le script.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    rem if %vj% EQU 1 ( set dernierj=31
    rem ) fin du premier si pour vj est égale à 1
    sinon sans ces deux ligne j ai plus ou moins le résultat voulu. je suis surement pas loin du but.
    le script n est peut être pas des plus académique désolé je suis pas un spécialiste du batch.
    Merci de votre aide et du coup de pousse.

  2. #2
    Membre chevronné

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Billets dans le blog
    1
    Par défaut
    le fichier log de la vieille => Tu peux expliquer en Français ce que cela signifie s'il te plait ?

  3. #3
    Expert confirmé
    Avatar de shawn12
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Avril 2006
    Messages
    3 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2006
    Messages : 3 368
    Par défaut
    Qui est la vieille dont tu parles ?

    Sinon, tu peux t'inspirer de cet exemple : http://windows.developpez.com/faq/ba...name_with_date

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    LOL

    désolé je voulais dire veille pour vieille ! (je suis confuse )

    veille = (date du jour) - (1 jour )
    jour précédant la date du jour.

    J'ai avancé entre temps :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    echo on
    REM copy e:\temp\test\*.* e:\temp\test2\*.*
    
    REM repertoire source
    set cpsource=C:\s1\
    REM repertoire destination
    set cpdest=C:\d1\
    set racine=Tracer
    
    REM date du jour
    set j_date=%date%
    REM variable jour, mois, annee 
    set jour=%j_date:~0,2%
    set mois=%j_date:~3,2%
    set annee=%j_date:~6,4%
    set vj = jour
    set vm = mois
    
    if %jour:~0,1%==0 set /a vj=%jour:~1,1%
    if %mois:~0,1%==0 set /a vm=%mois:~1,1%
    
    if %vj% LSS 2 set /a vm=%vm%-1
    if %vm% LSS 2 ( set /a annee=%annee%-1 
    set /a vm=12)
    
    	set dernierj=31
    	REM dernier jour du mois de avril, juin, septembre, novembre
    	if %vm% EQU 4 set /a dernierj=30
    	if %vm% EQU 6 set /a dernierj=30
    	if %vm% EQU 9 set /a dernierj=30
    	if %vm% EQU 11 set /a dernierj=30
    	set res_bix=1
    	REM dernier jour du mois de fevrier
    	if %vm% EQU 2 ( set /a res_bix=0
    	set /a div_annee = %annee%/4
    	set /a ret_div = %div_annee%*4
    	set /a res_bix = %annee%-%ret_div%
    	set /a dernierj=28 )
    	if %res_bix% EQU 0 set /a dernierj=29
    	
    if %vj% EQU 1 set /a vj=%dernierj%
    
    REM DEBUG
    echo j_date %j_date% jour %jour% mois %mois% annee %annee%
    echo vj %vj% vm %vm%
    echo res_bix %res_bix% div_annee %div_annee% dernierj %dernierj%
    echo racine %racine%
    pause
    
    if %vj% LSS 10 goto nivEGzero
    if %vj% GEQ 10 goto nivNOzero
    
    :nivEGzero
    vj=0%vj%
    goto nivNOzero
    
    :nivNOzero
    
    set fich=%racine%%vj%.log
    set fich2=%racine%%vj%_%vm%_%annee%.log
    echo %fich% %fich2%
    
    set source=%cpsource%%fich%
    set dest=%cpdest%%fich2%
    echo %source%
    echo %dest%
    
    REM copie du fichier log :
    copy %source% %dest%
    
    pause 
    echo on

  5. #5
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013
    Par défaut
    salut,

    un debut

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    suite à mes dernières modification je me renconte que mon test pour le dernier jour du mois de février le 28 ou le 29 n'est pas bon.

    j'ai donc fait les modifications suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    echo on
    
    REM repertoire source
    set cpsource=C:\s1\
    REM repertoire destination
    set cpdest=C:\d1\
    REM racine du nom du fichier source
    set racine=Tracer
    
    REM la date du jour
    set j_date=%date%
    REM variable jour, mois, annee de la date du jour
    set jour=%j_date:~0,2%
    set mois=%j_date:~3,2%
    set annee=%j_date:~6,4%
    
    
    REM pour les valeur de jour egale à 01 ... 09 je retire le 0
    if %jour:~0,1%==0 set /a vj=%jour:~1,1%
    if %jour:~0,1% GTR 0 set /a vj=%jour%
    REM pour les veleur de mois égale à 01 ... 09 je retire le 0
    if %mois:~0,1%==0 set /a vm=%mois:~1,1%
    if %mois:~0,1% GTR 0 set /a vm=%mois%
    
    REM si la date du jour est inférieur à 2  
    REM je décrémente de 1 le mois
    if %vj% LSS 2 set /a vm=%vm%-1
    REM si vm (donc le mois) est inférieur à 1 vm vos 12 et je décrémente de 1 l'annee
    if %vm% LSS 1 ( set /a annee=%annee%-1 
    set /a vm=12)
    	
    	REM par defaut le si la date du jour est le 1er du mois
    	REM je considere que le dernier jour du mois précedant est le 31
    	set dernierj=31
    	
    	REM je modifie le dernier jour du mois precedant 
    	REM pour les mois suivant de avril, juin, septembre, novembre
    	if %vm% EQU 4 set /a dernierj=30
    	if %vm% EQU 6 set /a dernierj=30
    	if %vm% EQU 9 set /a dernierj=30
    	if %vm% EQU 11 set /a dernierj=30
    	
    	REM je modifie le dernier jour du mois precedant
    	REM pour le cas particulier du mois de fevrier
    	REM je gere les annees bissextiles
    	REM Principe si l'expression r1 - r2 + r3 vaut 1 si et seulement si l'année est bissextile
    	if %vm% EQU 2 (
    		
    		set mod1=%annee%%%400
    		if %mod1% equ 0 (
    			set r1=1
    		) else (
    			set r1=0
    		)
    		
    		set mod2=%annee% % 100
    		if %mod2% equ 0 (
    			set r2=1
    		) else (
    			set r2=0
    		)
    		
    		set mod3=%annee% % 4
    		if %mod3% equ 0 (
    			set r3=1
    		) else (
    			set r3=0
    		)
    		
    		set res_bix = r1-r2+r3
    		
    		if %res_bix% EQU 1 ( 
    			set /a dernierj=29
    		) else ( 
    			set /a dernierj=28
    		)
    		
    	)
    
    REM je dertermine le jour précedant la date du jour dans la variable vj:	
    if %vj% EQU 1 set /a vj=%dernierj%
    if %vj% GTR 0 set /a vj = %vj%-1
    
    REM DEBUG
    echo j_date %j_date% jour %jour% mois %mois% annee %annee%
    echo vj %vj% vm %vm%
    echo res_bix %res_bix% div_annee %div_annee% ret_div %ret_div% dernierj %dernierj%
    echo racine %racine%
    
    REM je rajoute les le 0 pour à jour ou à mois pour le format date
    if %vm% LSS 10 set vm=0%vm%
    if %vj% LSS 10 set vj=0%vj%
    
    REM variable pour le nom du fichier source
    set fich=%racine%%vj%.log
    REM variable pour le nom pour le fichier destination
    set fich2=%racine%%vj%_%vm%_%annee%.log
    echo %fich% %fich2%
    
    REM variable avec le chemin et le nom du fichier source et destination
    set source=%cpsource%%fich%
    set dest=%cpdest%%fich2%
    echo %source%
    echo %dest%
    
    REM copie du fichier log :
    copy %source% %dest%
    
    REM stock la trace de la copie dans un fichier de type log
    echo %date% %time% copie du fichier %source% dans %dest% >> backup_log.log
    
    pause 
    echo on
    avec comme date du jour le 01/03/2004 voici le résultat :

    au moment de tester l année bissextile
    0 etait inattendu
    C:\> if equ 0 (
    Merci de votre aide, de vos remarques, ou de vos pistes pour me faire avancer.

  7. #7
    Membre Expert
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Par défaut
    En plus de la solution pointée par I'm_HERE, il existe un très vieil algorithme dont tu peux trouver un exemple d'utilisation dans cette autre discussion. Tout cela te simplifiera grandement la vie.

    Cordialement.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    Merci pour vos pistes !

    J'ai utilisé le très vieil algorithme que minnesota m'a proposé.
    Il est énorme cet algo !! je me sens bien ridicule avec mon code

    voici le code final :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    echo on
    
    REM repertoire source
    set cpsource=C:\s1\
    REM repertoire destination
    set cpdest=C:\d1\
    REM racine du nom du fichier source
    set racine=Tracer
    REM calcul du jour précedant gere les annees bissextiles.
    set NJ=-1
    set /a J=1%DATE:~0,2% - 100
    set /a M=1%DATE:~3,2% - 100
    set /a A=%DATE:~6,4%
    set /a JJ=%NJ% + ((1461 * (%A% + 4800 + (%M% - 14) / 12)) / 4 + (367 * (%M% - 2 - 12 * ((%M% - 14) / 12))) / 12 - (3 * ((%A% + 4900 + (%M% - 14) / 12) / 100)) / 4 + %J% - 32075)
    set /a T0=%JJ% + 68569
    set /a T1=(4 * %T0%) / 146097
    set /a T0=%T0% - (146097 * %T1% + 3) / 4
    set /a T2=(4000 * (%T0% + 1)) / 1461001
    set /a T0=%T0% - (1461 * %T2%) / 4 + 31
    set /a T3=(80 * %T0%) / 2447
    set /a J=%T0% - (2447 * %T3%) / 80
    set /a M=%T3% + 2 - (12 * (%T3% / 11))
    set /a A=100 * (%T1% - 49) + %T2% + (%T3% / 11)
    
    if %J% LSS 10 set J=0%J%
    if %M% LSS 10 set M=0%M%
    
    REM variable pour le nom du fichier source
    set fich=%racine%%J%.log
    REM variable pour le nom pour le fichier destination
    set fich2=%racine%%J%_%M%_%A%.log
    echo %fich% %fich2%
    
    REM variable avec le chemin et le nom du fichier source et destination
    set source=%cpsource%%fich%
    set dest=%cpdest%%fich2%
    echo %source%
    echo %dest%
    
    REM copie du fichier log :
    copy %source% %dest%
    
    REM stock la trace de la copie dans un fichier de type log
    echo %date% %time% copie du fichier %source% dans %dest% >> backup_log.log
    
    pause 
    echo on
    J'ai juste un dernier petit problème le répertoire de destination est un disque réseau.

    j'ai tenté de mettre comme valeur pour cpdest :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set cpdest=\\Srv-alpha\partagelog
    ça ne marche pas

    j'ai cherché à monté directement le répertoire reseau via outils\Connecté un lecteur reseau... que j'ai affecté à la lettre L:

    j'ai redéfini cpdest :
    ça ne mlarche pas non plus.

    J'ai regardé avec net use comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    net use L: /DELETE
    net use L: \\Srv-alpha\LogEscribe
    set cpdest=L:\
    ça ne marche pas non plus...

    alors si vous aviez une petite idées encore merci.

  9. #9
    Membre Expert
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Par défaut
    Citation Envoyé par jano_dave Voir le message
    Il est énorme cet algo !! je me sens bien ridicule avec mon code
    Ne le soit pas, ne le soit pas ! Ceux qui ont fait ça, c'étaient des maitres. Je crois même avant l'invention de l'ordinateur.

    Sinon, essaye avec la commande "xcopy" car je ne sais pas si "copy" gère le réseau.

    voila un exemple avec xcopy

  10. #10
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013

  11. #11
    Membre Expert
    Avatar de I'm_HERE
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 013

  12. #12
    Membre Expert
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Par défaut
    en fait, ça vient d'un bouquin :

    A machine algorithm for processing calendar dates”, H.F. Fliegel and T.C. Van Flandern. Comm.ACM 11, #10, 657 (1968). [One of the most frequently used computer algorithms.]

    c'est utilisé dans de nombreuses lib.

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    Très intéressant les liens que vous me donnez !

    Pour l'algo de 1968 c'était encore les cartes à trou non ?

    J'ai regardé la commande xcopy :

    et j ai modifié mon code comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    echo on
    
    REM repertoire source
    set cpsource=D:\Mortara Instrument Inc\EScribe\LogFiles\
    
    REM repertoire destination
    set cpdest=\\Srv-alpha\LogEscribe\
    
    REM racine du nom du fichier source
    set racine=Tracer
    
    REM calcul du jour précedant gere les annees bissextiles.
    set NJ=-1
    set /a J=1%DATE:~0,2% - 100
    set /a M=1%DATE:~3,2% - 100
    set /a A=%DATE:~6,4%
    set /a JJ=%NJ% + ((1461 * (%A% + 4800 + (%M% - 14) / 12)) / 4 + (367 * (%M% - 2 - 12 * ((%M% - 14) / 12))) / 12 - (3 * ((%A% + 4900 + (%M% - 14) / 12) / 100)) / 4 + %J% - 32075)
    set /a T0=%JJ% + 68569
    set /a T1=(4 * %T0%) / 146097
    set /a T0=%T0% - (146097 * %T1% + 3) / 4
    set /a T2=(4000 * (%T0% + 1)) / 1461001
    set /a T0=%T0% - (1461 * %T2%) / 4 + 31
    set /a T3=(80 * %T0%) / 2447
    set /a J=%T0% - (2447 * %T3%) / 80
    set /a M=%T3% + 2 - (12 * (%T3% / 11))
    set /a A=100 * (%T1% - 49) + %T2% + (%T3% / 11)
    
    if %J% LSS 10 set J=0%J%
    if %M% LSS 10 set M=0%M%
    
    REM variable pour le nom du fichier source
    set fich=%racine%%J%.log
    REM variable pour le nom pour le fichier destination
    set fich2=%racine%%J%_%M%_%A%.log
    echo %fich% %fich2%
    
    REM variable avec le chemin et le nom du fichier source et destination
    set source=%cpsource%%fich%
    set dest=%cpdest%%fich2%
    echo %source%
    echo %dest%
    pause 
    
    REM copie du fichier log :
    xcopy %source% %dest%
    
    REM stock la trace de la copie dans un fichier de type log
    echo %date% %time% copie du fichier %source% dans %dest% >> backup_log.log
    
    pause 
    echo on
    Mais j'ai l'erreur suivante
    xcopy D:\Mortara Instrument Inc\EScribe\LogFiles\Tracer01.log \\Srv-alpha\LogEscribe\Tracer01_07_2010.log
    Invalid number of parameteres
    Même si j'ajoute comme paramètre /Y
    Une idée ?

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    le répertoire source contient des espaces se qui provoque l'erreur dans xcopy
    bon mettant la variable du répertoire source entre guillemets le problème est résolu.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    xcopy "%source%" %dest% /Y
    Par contre au moment de la copie xcopy me pose une question :

    xcopy "D:\Mortara Instrument Inc\EScribe\LogFiles\Tracer01.log" \\Srv-alpha\LogEscribe\Tracer01_07_2010.log
    Does \\Srv-alpha\LogEscribe\Tracer01_07_2010.log specify a file name or directory name on the target (F = file, D = directory) ?
    Y a t-il un moyen de supprimer cette question pour excuter ce bat dans une tâche planifier ?

  15. #15
    Membre Expert
    Inscrit en
    Avril 2010
    Messages
    1 495
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 1 495
    Par défaut
    soit tu renommes ton fichier avant la copie ou bien tu fais :

    Citation Envoyé par jano_dave Voir le message
    Pour l'algo de 1968 c'était encore les cartes à trou non ?
    Je pense pas, non.

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mars 2009
    Messages : 89
    Par défaut
    oui c'est bon

    Je vous remercie tous pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 16/07/2009, 10h22
  2. [Batch] Récupérer un fichier .log des actions du .bat
    Par rob81 dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 06/11/2007, 08h54
  3. Réponses: 6
    Dernier message: 14/06/2007, 15h36
  4. [batch]supprimer les fichiers créés il y a X jour
    Par norac dans le forum Windows
    Réponses: 6
    Dernier message: 18/10/2006, 14h32
  5. Batch pour copier des fichier
    Par borgfabr dans le forum Scripts/Batch
    Réponses: 3
    Dernier message: 09/03/2004, 07h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo