Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batch File funktioniert vor 10:00 nicht

Frage Entwicklung Batch & Shell

Mitglied: Zendara

Zendara (Level 1) - Jetzt verbinden

28.11.2013 um 09:31 Uhr, 1511 Aufrufe, 4 Kommentare, 2 Danke

Guten Morgen!

Ich habe mir ein Batch File gebastelt mit dem ich eine Datei mit 1000MB vom USB Stick auf die Festplatte kopiere und messe wie lange der Kopiervorgang dauert.
Um einen genaueren Wert zu bekommen wiederhole ich den Kopiervorgang 10x und errechne mir den Zeitlichen Durchschnittswert.
Danach wiederhole ich den ganzen Vorgang nochmal und kopiere das gleiche File von der Festplatte in einen Unterordner.

So... das ganze funktioniert eigentlich ganz gut solange es nicht vor 10 Uhr gestartet wird.

Das Problem ist, dass die Stunde keine zwei Stellen hat 9:24:03,75.
Um 10:24:03,75 habe ich dann alle Stellen zur Verfügung und es läuft alles wie gewollt.

Mit ...
01.
  
02.
if %timeusbstart:~0,2%==: set %timeusbstart%=0%timeusbstart% 

..wollte ich dann eine "0" in die Variable schreiben wenn die zweite Stelle von %time% ein ":" ist.

Leider ist das Ergebnis "0 9:24:03,75"

Kann mir bitte jemand weiter helfen.
01.
  
02.
@echo off 
03.
set xxx=xxx_1000MB.bmp 
04.
::set xxx=ipcop.iso 
05.
 
06.
set log=%computername%_copytime.log 
07.
	echo Logfile: %log% 
08.
:start 
09.
set usbcopy=0 
10.
set hddcopy=0 
11.
 
12.
if not exist %xxx% goto fehler 
13.
 
14.
:usbcopy 
15.
set /a count=%usbcopy%+1 
16.
	echo. 
17.
	echo ########################################### 
18.
	echo      File copy in process! count: %count%/10 
19.
	echo ########################################### 
20.
	echo. 
21.
 
22.
if not exist c:\copytest md c:\copytest 
23.
 
24.
set timeusbstart=%time% 
25.
	echo Start copy from USB to HDD - %timeusbstart% 
26.
	 
27.
copy %xxx% c:\copytest 
28.
 
29.
set timeusbend=%time% 
30.
	echo Copy from USB to HDD successful - %timeusbend% 
31.
 
32.
rem ########## Hier ist der Fehler!! 
33.
	 
34.
if %timeusbstart:~0,2%==: set %timeusbstart%=0%timeusbstart% 
35.
pause 
36.
if %timeusbstart:~0,1%==0 set usbstarthour=%timeusbstart:~1,1% 
37.
if not %timeusbstart:~0,1%==0 set usbstarthour=%timeusbstart:~0,2% 
38.
if %timeusbstart:~3,1%==0 set usbstartmin=%timeusbstart:~4,1% 
39.
if not %timeusbstart:~3,1%==0 set usbstartmin=%timeusbstart:~3,2% 
40.
if %timeusbstart:~6,1%==0 set usbstartsec=%timeusbstart:~7,1% 
41.
if not %timeusbstart:~6,1%==0 set usbstartsec=%timeusbstart:~6,2% 
42.
if %timeusbstart:~9,1%==0 set usbstarthsec=%timeusbstart:~10,1% 
43.
if not %timeusbstart:~9,1%==0 set usbstarthsec=%timeusbstart:~9,2% 
44.
 
45.
if %timeusbend:~0,2%==: set %timeusbend%=0%timeusbend% 
46.
 
47.
if %timeusbend:~0,1%==0 set usbendhour=%timeusbend:~1,1% 
48.
if not %timeusbend:~0,1%==0 set usbendhour=%timeusbend:~0,2% 
49.
if %timeusbend:~3,1%==0 set usbendmin=%timeusbend:~4,1% 
50.
if not %timeusbend:~3,1%==0 set usbendmin=%timeusbend:~3,2% 
51.
if %timeusbend:~6,1%==0 set usbendsec=%timeusbend:~7,1% 
52.
if not %timeusbend:~6,1%==0 set usbendsec=%timeusbend:~6,2% 
53.
if %timeusbend:~9,1%==0 set usbendhsec=%timeusbend:~10,1% 
54.
if not %timeusbend:~9,1%==0 set usbendhsec=%timeusbend:~9,2% 
55.
 
56.
rem startet den Test neu falls ein Stundensprung besteht 
57.
if not %usbstarthour%==%usbendhour% goto start 
58.
	echo -- %usbcopy% 
59.
 
60.
goto usbstart 
61.
 
62.
:usbstart 
63.
set /a usbsec = (%usbendmin%*60+%usbendsec%)-(%usbstartmin%*60+%usbstartsec%) 
64.
	echo (%usbendmin%*60+%usbendsec%)-(%usbstartmin%*60+%usbstartsec%)=%usbsec% 
65.
set /a usbhsec = %usbendhsec%-%usbstarthsec% 
66.
	echo %usbendhsec%-%usbstarthsec%=%usbhsec% 
67.
set /a usbtime = %usbsec%*100+%usbhsec% 
68.
	echo %usbsec%*100+%usbhsec%=%usbtime% 
69.
 
70.
goto usbstep 
71.
 
72.
:usbstep 
73.
if /I %usbcopy%==0 set usb0=%usbtime% 
74.
if /I %usbcopy%==1 set usb1=%usbtime% 
75.
if /I %usbcopy%==2 set usb2=%usbtime% 
76.
if /I %usbcopy%==3 set usb3=%usbtime% 
77.
if /I %usbcopy%==4 set usb4=%usbtime% 
78.
if /I %usbcopy%==5 set usb5=%usbtime% 
79.
if /I %usbcopy%==6 set usb6=%usbtime% 
80.
if /I %usbcopy%==7 set usb7=%usbtime% 
81.
if /I %usbcopy%==8 set usb8=%usbtime% 
82.
if /I %usbcopy%==9 set usb9=%usbtime% 
83.
 
84.
if /I %usbcopy%==9 goto usbcalc 
85.
set /a usbcopy = %usbcopy%+1 
86.
 
87.
goto usbcopy 
88.
 
89.
:usbcalc 
90.
 
91.
set /a usbtime10 = %usb0%+%usb1%+%usb2%+%usb3%+%usb4%+%usb5%+%usb6%+%usb7%+%usb8%+%usb9% 
92.
	echo usbtime10 %usb0%+%usb1%+%usb2%+%usb3%+%usb4%+%usb5%+%usb6%+%usb7%+%usb8%+%usb9%=%usbtime10% 
93.
 
94.
set /a usbtime = (%usbtime10%/10)+1000000 
95.
	echo. 
96.
	echo Average Time to Copy %xxx% from USB to HDD: %usbtime:~3,2%,%usbtime:~5,2% seconds 
97.
	echo. 
98.
	 
99.
goto hddcopy 
100.
 
101.
:hddcopy 
102.
set /a count=%hddcopy%+1 
103.
	echo. 
104.
	echo ########################################### 
105.
	echo      File copy in process! count: %count%/10 
106.
	echo ########################################### 
107.
	echo. 
108.
 
109.
if not exist c:\copytest\hdd_to_hdd md c:\copytest\hdd_to_hdd 
110.
 
111.
set timehddstart=%time% 
112.
	echo Start copy from HDD to HDD - %timehddstart% 
113.
	 
114.
copy c:\copytest\%xxx% c:\copytest\hdd_to_hdd\%xxx% 
115.
 
116.
set timehddend=%time% 
117.
	echo Copy from HDD to HDD successful - %timehddend% 
118.
 
119.
if %timehddstart:~0,1%==0 set hddstarthour=%timehddstart:~1,1% 
120.
if not %timehddstart:~0,1%==0 set hddstarthour=%timehddstart:~0,2% 
121.
if %timehddstart:~3,1%==0 set hddstartmin=%timehddstart:~4,1% 
122.
if not %timehddstart:~3,1%==0 set hddstartmin=%timehddstart:~3,2% 
123.
if %timehddstart:~6,1%==0 set hddstartsec=%timehddstart:~7,1% 
124.
if not %timehddstart:~6,1%==0 set hddstartsec=%timehddstart:~6,2% 
125.
if %timehddstart:~9,1%==0 set hddstarthsec=%timehddstart:~10,1% 
126.
if not %timehddstart:~9,1%==0 set hddstarthsec=%timehddstart:~9,2% 
127.
 
128.
if %timehddend:~0,1%==0 set hddendhour=%timehddend:~1,1% 
129.
if not %timehddend:~0,1%==0 set hddendhour=%timehddend:~0,2% 
130.
if %timehddend:~3,1%==0 set hddendmin=%timehddend:~4,1% 
131.
if not %timehddend:~3,1%==0 set hddendmin=%timehddend:~3,2% 
132.
if %timehddend:~6,1%==0 set hddendsec=%timehddend:~7,1% 
133.
if not %timehddend:~6,1%==0 set hddendsec=%timehddend:~6,2% 
134.
if %timehddend:~9,1%==0 set hddendhsec=%timehddend:~10,1% 
135.
if not %timehddend:~9,1%==0 set hddendhsec=%timehddend:~9,2% 
136.
 
137.
rem startet den Test neu falls ein Stundensprung besteht 
138.
if not %hddstarthour%==%hddendhour% goto start 
139.
	echo -- %hddcopy% 
140.
	 
141.
goto hddstart 
142.
 
143.
:hddstart 
144.
	echo. 
145.
set /a hddsec = (%hddendmin%*60+%hddendsec%)-(%hddstartmin%*60+%hddstartsec%) 
146.
echo (%hddendmin%*60+%hddendsec%)-(%hddstartmin%*60+%hddstartsec%)=%hddsec% 
147.
set /a hddhsec = %hddendhsec%-%hddstarthsec% 
148.
echo %hddendhsec%-%hddstarthsec%=%hddhsec% 
149.
set /a hddtime = %hddsec%*100+%hddhsec% 
150.
echo %hddsec%*100+%hddhsec%=%hddtime% 
151.
 
152.
goto hddstep 
153.
 
154.
:hddstep 
155.
if /I %hddcopy%==0 set hdd0=%hddtime% 
156.
if /I %hddcopy%==1 set hdd1=%hddtime% 
157.
if /I %hddcopy%==2 set hdd2=%hddtime% 
158.
if /I %hddcopy%==3 set hdd3=%hddtime% 
159.
if /I %hddcopy%==4 set hdd4=%hddtime% 
160.
if /I %hddcopy%==5 set hdd5=%hddtime% 
161.
if /I %hddcopy%==6 set hdd6=%hddtime% 
162.
if /I %hddcopy%==7 set hdd7=%hddtime% 
163.
if /I %hddcopy%==8 set hdd8=%hddtime% 
164.
if /I %hddcopy%==9 set hdd9=%hddtime% 
165.
if /I %hddcopy%==9 goto hddcalc 
166.
 
167.
set /a hddcopy = %hddcopy%+1 
168.
goto hddcopy 
169.
 
170.
:hddcalc 
171.
	echo. 
172.
set /a hddtime10 = %hdd0%+%hdd1%+%hdd2%+%hdd3%+%hdd4%+%hdd5%+%hdd6%+%hdd7%+%hdd8%+%hdd9% 
173.
	echo hddtime10 %hdd0%+%hdd1%+%hdd2%+%hdd3%+%hdd4%+%hdd5%+%hdd6%+%hdd7%+%hdd8%+%hdd9%=%hddtime10% 
174.
	 
175.
rem hier wird die durchschnittliche Zeit berechnet von 10 Versuchen + 1000000 dient zusätzliche Stellen für weitere Berechnungen 
176.
set /a hddtime = (%hddtime10%/10)+1000000 
177.
	echo. 
178.
	echo Average Time to Copy %xxx% from hdd to HDD: %hddtime:~3,2%,%hddtime:~5,2% seconds 
179.
	echo. 
180.
	 
181.
goto ready 
182.
 
183.
:ready 
184.
set usb=%usbtime:~3,2%,%usbtime:~5,2% 
185.
	echo Time for copy from USB to HDD %usb% seconds 
186.
set hdd=%hddtime:~3,2%,%hddtime:~5,2% 
187.
	echo Time for copy from HDD to HDD %hdd% seconds 
188.
	 
189.
goto exit 
190.
 
191.
:exit 
192.
	echo -- del files 
193.
pause 
194.
 
195.
del c:\copytest\%log% 
196.
del c:\copytest\%xxx% 
197.
del c:\copytest\hdd_to_hdd\%xxx% 
198.
 
199.
exit 
200.
 
201.
:fehler 
202.
	echo Die Datei %xxx% wurde nicht gefunden. 
203.
pause 
204.
 
205.
goto exit


Danke LG
Zendara
Mitglied: Snowman25
28.11.2013 um 10:04 Uhr
Hallo ,

Nimm dir doch die Stunde von time /T anstatt von %time%, dann hast du immer die führende 0.


Gruß,
Snowman25
Bitte warten ..
Mitglied: Zendara
28.11.2013 um 10:09 Uhr
Hallo Snowman,

super danke damit wird es funktionierten!

LG
zendara
Bitte warten ..
Mitglied: bastla
28.11.2013 um 11:10 Uhr
Hallo Zendara!

Alternativ könntest Du mit
set "timeusbstart=%timeusbstart: =0%"
auch (ohne Abfrage) das Leerzeichen durch 0 ersetzen.

Grüße
bastla
Bitte warten ..
Mitglied: Zendara
29.11.2013 um 13:18 Uhr
Hallo Bastla,

danke auch dir für deine Antwort. Hab etwas gebraucht bis ich herausgefunden habe wie das funktioniert.
Es sind bei Varianten von euch eingebraut und es läuft bestens.

Den Batch habe ich noch noch mit einer Dateigrössenauswertung und Übertragungsgeschwindigkeit erweiter.
Wobei ich mir bei letzteren nicht sicher bin ob das Ergebis richtig ist. Fall ich noch mehr Zeit habe muss ich nochmal alles nachrechnen.

Hier nochmal zusammenfassend den Batchinhalt fall jemand ähnliches benötigt.

01.
 
02.
cls 
03.
@echo off 
04.
rem setzt die Variable mit der gewünschten Datei 
05.
::set xxx=xxx_1000MB.bmp 
06.
set xxx=ipcop.iso 
07.
 
08.
rem Auswertung der Dateigrousse in Bytes 
09.
for %%F in ("%cd%\%xxx%") do set groesse=%%~zF 
10.
	echo %cd%\%xxx% %groesse% Bytes 
11.
 
12.
rem Dateiname für ein Logfile falls benötigt 
13.
set log=%computername%_copytime.log 
14.
	echo Logfile: %log% 
15.
 
16.
:start 
17.
rem Zähler startet mit 0 
18.
	echo Start Test %time% >>%log% 
19.
set usbcopy=0 
20.
set hddcopy=0 
21.
 
22.
if not exist %xxx% goto fehler 
23.
 
24.
	echo Start copy File from USB to HDD >>%log% 
25.
:usbcopy 
26.
set /a count=%usbcopy%+1 
27.
	echo. 
28.
	echo ########################################### 
29.
	echo      File copy in process! count: %count%/10 
30.
	echo ########################################### 
31.
	echo. 
32.
 
33.
if not exist c:\copytest md c:\copytest 
34.
 
35.
rem setzt die Zeit vom Anfang und vom Ende des Kopiervorgangs. Für Stunde wird eine extra Variable benötigt wegen 9:15 / 09:15  
36.
rem beinhaltet nun 2 unterschiedliche Varianten für 9:15 / 09:15. Erste Varitante wird unter USB ausgeführt und die zweite Variante unter HDD 
37.
set timeusbstart=%time% 
38.
	echo Start copy from USB to HDD - %timeusbstart% 
39.
	 
40.
copy %xxx% c:\copytest 
41.
 
42.
set timeusbend=%time% 
43.
	echo Copy from USB to HDD successful - %timeusbend% 
44.
 
45.
rem Zeit wird in einzelne Blöcke aufgeteilt 
46.
 
47.
set "timeusbstart=%timeusbstart: =0%" 
48.
 
49.
if %timeusbstart:~0,1%==0 set usbstarthour=%timeusbstart:~1,1% 
50.
if not %timeusbstart:~0,1%==0 set usbstarthour=%timeusbstart:~0,2% 
51.
 
52.
if %timeusbstart:~3,1%==0 set usbstartmin=%timeusbstart:~4,1% 
53.
if not %timeusbstart:~3,1%==0 set usbstartmin=%timeusbstart:~3,2% 
54.
if %timeusbstart:~6,1%==0 set usbstartsec=%timeusbstart:~7,1% 
55.
if not %timeusbstart:~6,1%==0 set usbstartsec=%timeusbstart:~6,2% 
56.
if %timeusbstart:~9,1%==0 set usbstarthsec=%timeusbstart:~10,1% 
57.
if not %timeusbstart:~9,1%==0 set usbstarthsec=%timeusbstart:~9,2% 
58.
 
59.
if %timeusbstart:~0,1%==0 set usbendhour=%timeusbstart:~1,1% 
60.
if not %timeusbstart:~0,1%==0 set usbendhour=%timeusbstart:~0,2% 
61.
 
62.
if %timeusbend:~3,1%==0 set usbendmin=%timeusbend:~4,1% 
63.
if not %timeusbend:~3,1%==0 set usbendmin=%timeusbend:~3,2% 
64.
if %timeusbend:~6,1%==0 set usbendsec=%timeusbend:~7,1% 
65.
if not %timeusbend:~6,1%==0 set usbendsec=%timeusbend:~6,2% 
66.
if %timeusbend:~9,1%==0 set usbendhsec=%timeusbend:~10,1% 
67.
if not %timeusbend:~9,1%==0 set usbendhsec=%timeusbend:~9,2% 
68.
 
69.
rem startet den Test neu falls ein Stundensprung besteht 
70.
if not %usbstarthour%==%usbendhour% echo Test muss neu gestartet werden 
71.
if not %usbstarthour%==%usbendhour% echo Test muss wegen Stundensprung neu gestartet werden >>%log% 
72.
if not %usbstarthour%==%usbendhour% goto start 
73.
::	echo -- %usbcopy% 
74.
 
75.
goto usbstart 
76.
 
77.
:usbstart 
78.
rem hier wird die dauer jedes einzelnen Kopiervorgangs berechnet 
79.
set /a usbsec = (%usbendmin%*60+%usbendsec%)-(%usbstartmin%*60+%usbstartsec%) 
80.
::	echo (%usbendmin%*60+%usbendsec%)-(%usbstartmin%*60+%usbstartsec%)=%usbsec% 
81.
set /a usbhsec = %usbendhsec%-%usbstarthsec% 
82.
::	echo %usbendhsec%-%usbstarthsec%=%usbhsec% 
83.
set /a usbtime = %usbsec%*100+%usbhsec% 
84.
::	echo %usbsec%*100+%usbhsec%=%usbtime% 
85.
 
86.
goto usbstep 
87.
 
88.
:usbstep 
89.
rem Vorbereitung neuer Variablen zur durchschnittlichen Berechnung der Zeit 
90.
if /I %usbcopy%==0 set usb0=%usbtime% 
91.
if /I %usbcopy%==1 set usb1=%usbtime% 
92.
if /I %usbcopy%==2 set usb2=%usbtime% 
93.
if /I %usbcopy%==3 set usb3=%usbtime% 
94.
if /I %usbcopy%==4 set usb4=%usbtime% 
95.
if /I %usbcopy%==5 set usb5=%usbtime% 
96.
if /I %usbcopy%==6 set usb6=%usbtime% 
97.
if /I %usbcopy%==7 set usb7=%usbtime% 
98.
if /I %usbcopy%==8 set usb8=%usbtime% 
99.
if /I %usbcopy%==9 set usb9=%usbtime% 
100.
 
101.
if /I %usbcopy%==9 goto usbcalc 
102.
set /a usbcopy = %usbcopy%+1 
103.
 
104.
goto usbcopy 
105.
 
106.
:usbcalc 
107.
rem hier wird die durchschnittliche Zeit berechnet von 10 Versuchen + 1000000 dient zusätzliche Stellen für weitere Berechnungen 
108.
	echo. 
109.
set /a usbtime10 = %usb0%+%usb1%+%usb2%+%usb3%+%usb4%+%usb5%+%usb6%+%usb7%+%usb8%+%usb9% 
110.
	echo usbtime10 %usb0%+%usb1%+%usb2%+%usb3%+%usb4%+%usb5%+%usb6%+%usb7%+%usb8%+%usb9%=%usbtime10% 
111.
	echo. 
112.
set /a usbtime = (%usbtime10%/10)+1000000 
113.
	echo. >>%log% 
114.
	echo Average Time to Copy %xxx% from USB to HDD: %usbtime:~3,2%,%usbtime:~5,2% seconds >>%log% 
115.
	echo. >>%log% 
116.
	 
117.
	echo Start copy File from HDD to HDD >>%log% 
118.
goto hddcopy 
119.
 
120.
:hddcopy 
121.
set /a count=%hddcopy%+1 
122.
	echo. 
123.
	echo ########################################### 
124.
	echo      File copy in process! count: %count%/10 
125.
	echo ########################################### 
126.
	echo. 
127.
 
128.
if not exist c:\copytest\hdd_to_hdd md c:\copytest\hdd_to_hdd 
129.
 
130.
set timehddstart=%time% 
131.
set timehddhours=time /T 
132.
	echo Start copy from HDD to HDD - %timehddstart% 
133.
 
134.
copy c:\copytest\%xxx% c:\copytest\hdd_to_hdd\%xxx% 
135.
 
136.
set timehddend=%time% 
137.
set timehddhoure=time /T 
138.
	echo Copy from HDD to HDD successful - %timehddend% 
139.
 
140.
if %timehddhours:~0,1%==0 set hddstarthour=%timehddhours:~1,1% 
141.
if not %timehddhours:~0,1%==0 set hddstarthour=%timehddhours:~0,2% 
142.
 
143.
if %timehddstart:~3,1%==0 set hddstartmin=%timehddstart:~4,1% 
144.
if not %timehddstart:~3,1%==0 set hddstartmin=%timehddstart:~3,2% 
145.
if %timehddstart:~6,1%==0 set hddstartsec=%timehddstart:~7,1% 
146.
if not %timehddstart:~6,1%==0 set hddstartsec=%timehddstart:~6,2% 
147.
if %timehddstart:~9,1%==0 set hddstarthsec=%timehddstart:~10,1% 
148.
if not %timehddstart:~9,1%==0 set hddstarthsec=%timehddstart:~9,2% 
149.
 
150.
if %timehddhoure:~0,1%==0 set hddendhour=%timehddhoure:~1,1% 
151.
if not %timehddhoure:~0,1%==0 set hddendhour=%timehddhoure:~0,2% 
152.
 
153.
if %timehddend:~3,1%==0 set hddendmin=%timehddend:~4,1% 
154.
if not %timehddend:~3,1%==0 set hddendmin=%timehddend:~3,2% 
155.
if %timehddend:~6,1%==0 set hddendsec=%timehddend:~7,1% 
156.
if not %timehddend:~6,1%==0 set hddendsec=%timehddend:~6,2% 
157.
if %timehddend:~9,1%==0 set hddendhsec=%timehddend:~10,1% 
158.
if not %timehddend:~9,1%==0 set hddendhsec=%timehddend:~9,2% 
159.
 
160.
if not %usbstarthour%==%usbendhour% echo Test muss neu gestartet werden 
161.
if not %usbstarthour%==%usbendhour% echo Test muss wegen Stundensprung neu gestartet werden >>%log% 
162.
if not %hddstarthour%==%hddendhour% goto start 
163.
::	echo -- %hddcopy% 
164.
 
165.
goto hddstart 
166.
 
167.
:hddstart 
168.
	echo. 
169.
set /a hddsec = (%hddendmin%*60+%hddendsec%)-(%hddstartmin%*60+%hddstartsec%) 
170.
::	echo (%hddendmin%*60+%hddendsec%)-(%hddstartmin%*60+%hddstartsec%)=%hddsec% 
171.
set /a hddhsec = %hddendhsec%-%hddstarthsec% 
172.
::	echo %hddendhsec%-%hddstarthsec%=%hddhsec% 
173.
set /a hddtime = %hddsec%*100+%hddhsec% 
174.
::	echo %hddsec%*100+%hddhsec%=%hddtime% 
175.
 
176.
goto hddstep 
177.
 
178.
:hddstep 
179.
if /I %hddcopy%==0 set hdd0=%hddtime% 
180.
if /I %hddcopy%==1 set hdd1=%hddtime% 
181.
if /I %hddcopy%==2 set hdd2=%hddtime% 
182.
if /I %hddcopy%==3 set hdd3=%hddtime% 
183.
if /I %hddcopy%==4 set hdd4=%hddtime% 
184.
if /I %hddcopy%==5 set hdd5=%hddtime% 
185.
if /I %hddcopy%==6 set hdd6=%hddtime% 
186.
if /I %hddcopy%==7 set hdd7=%hddtime% 
187.
if /I %hddcopy%==8 set hdd8=%hddtime% 
188.
if /I %hddcopy%==9 set hdd9=%hddtime% 
189.
if /I %hddcopy%==9 goto hddcalc 
190.
 
191.
set /a hddcopy = %hddcopy%+1 
192.
goto hddcopy 
193.
 
194.
:hddcalc 
195.
	echo. 
196.
set /a hddtime10 = %hdd0%+%hdd1%+%hdd2%+%hdd3%+%hdd4%+%hdd5%+%hdd6%+%hdd7%+%hdd8%+%hdd9% 
197.
	echo hddtime10 %hdd0%+%hdd1%+%hdd2%+%hdd3%+%hdd4%+%hdd5%+%hdd6%+%hdd7%+%hdd8%+%hdd9%=%hddtime10% 
198.
	echo. 
199.
set /a hddtime = (%hddtime10%/10)+1000000 
200.
	echo. >>%log% 
201.
	echo Average Time to Copy %xxx% from hdd to HDD: %hddtime:~3,2%,%hddtime:~5,2% seconds >>%log% 
202.
	echo. >>%log% 
203.
goto ready 
204.
 
205.
:ready 
206.
rem das Ergebnis von USB/HDD Kopiervorgang 
207.
set /a size = %groesse%/1024/1024 
208.
	echo Tested with %xxx% Size: %size% MB (%groesse% Bytes) 
209.
	echo. 
210.
 
211.
set /a usbmbpersec1 = %groesse%/(%usbtime%-1000000) 
212.
set /a usbmbpersec2 = %usbmbpersec1% 
213.
set usb=%usbtime:~3,2%,%usbtime:~5,2% 
214.
	echo Time for copy from USB to HDD %usb% seconds ~ %usbmbpersec2% Bytes/s 
215.
		echo Time for copy from USB to HDD %usb% seconds ~ %usbmbpersec2% Bytes/s >>%log% 
216.
 
217.
 
218.
set /a hddmbpersec1 = %groesse%/(%hddtime%-1000000) 
219.
set /a hddmbpersec2 = %hddmbpersec1% 
220.
set hdd=%hddtime:~3,2%,%hddtime:~5,2% 
221.
	echo Time for copy from HDD to HDD %hdd% seconds ~ %hddmbpersec2% Bytes/s 
222.
	echo Time for copy from HDD to HDD %hdd% seconds ~ %hddmbpersec2% Bytes/s >>%log% 
223.
	 
224.
goto exit 
225.
 
226.
:exit 
227.
	echo Test is finished >>%log% 
228.
	echo -- del files 
229.
 
230.
del c:\copytest\%log% 
231.
del c:\copytest\%xxx% 
232.
del c:\copytest\hdd_to_hdd\%xxx% 
233.
pause 
234.
exit 
235.
 
236.
:fehler 
237.
	echo Die Datei %xxx% wurde nicht gefunden. 
238.
pause 
239.
 
240.
goto exit
Danke nochmal
LG
Zendara
Bitte warten ..
Neuester Wissensbeitrag
Internet

Unbemerkt - Telekom Netzumschaltung! - BNG - Broadband Network Gateway

(3)

Erfahrungsbericht von ashnod zum Thema Internet ...

Ähnliche Inhalte
Batch & Shell
"Generic" Drucker mit batch - File erstellen (6)

Frage von MrPreesident zum Thema Batch & Shell ...

Batch & Shell
gelöst Kl. Frage: Log-File schreiben per Batch (3)

Frage von Yauhun zum Thema Batch & Shell ...

Windows 10
Windows 10 Answer File (5)

Frage von Patrick-IT zum Thema Windows 10 ...

Batch & Shell
gelöst ( Batch ) Open File or Folder Dialog (5)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (17)

Frage von JayyyH zum Thema Switche und Hubs ...

Windows Server
Outlook Verbindungsversuch mit Exchange (15)

Frage von xbast1x zum Thema Windows Server ...

DSL, VDSL
DSL-Signal bewerten (14)

Frage von SarekHL zum Thema DSL, VDSL ...