Probleme execution script
Bonjour,
Petit problème avec mon script.
Je lance un batch Rename.bat afin de renommer un fichier qui comporte des variables.
Code:
1 2 3 4 5 6
| @echo off
for /f "tokens= 1,2,3,4 delims=/ " %%I in ('date /t') do Set jour=%%I
for /f "tokens= 1,2,3,4 delims=/ " %%I in ('date /t') do Set mois=%%J
for /f "tokens= 1,2,3,4 delims=/ " %%I in ('date /t') do Set annee=%%K
RENAME e:\temp\ENTB*.DAT ENTB000%annee%%mois%%jour%.DAT
exit |
le fichier est bien renommé sauf que mon script me balance un erreur "fichier introuvable". Au deuxieme lancement le fichier est trouvé et le script se termine correctement.
Code:
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
|
Set objShell = CreateObject("Wscript.Shell")
objShell.Run("%comspec% /k rename.bat /all")
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Dim fso, f
Dim st
Set fso = CreateObject("Scripting.FileSystemObject")
Dim madate
madate = Year(Now)&"0"& Month(Now)& Day(Now)& Hour(Now)&Minute(Now)& Second(Now)
'Ouverture et lecture du fichier à modifier
Set f = fso.OpenTextFile("e:\temp\ENTB000"&Year(Now)&"0"& Month(Now)& Day(Now)&".DAT", ForReading)
Set f2 = fso.CreateTextFile("e:\temp\ENTB000.DAT.tmp")
Do While Not f.AtEndOfStream
st = f.ReadLine
If Right(Left(st,432),5) = "00000" Then
f2.WriteLine Left(st,427) & "CBMTZ" & Right(st,Len(st) - 432)
Else
f2.WriteLine st
End If
Loop
f.Close
f2.close
fso.deletefile ("e:\temp\ENTB000"&Year(Now)&"0"& Month(Now)& Day(Now)&".DAT")
fso.MoveFile "e:\temp\ENTB000.DAT.tmp", "e:\temp\ENTB000"&madate&".DAT" |
Quelqu'un a une idée?