Avatar billede vedelsby Nybegynder
28. august 2003 - 14:08 Der er 6 kommentarer og
1 løsning

Nemt windowsscript tid+størrelse af copy..

Hejsa alle.
Jeg har ikke helt styr på scrips.
Men har lavet en simpel backup funktion med noget Xcopy etc.
Nu ville jeg gerne kunne skrive noget, når jeg slutter backup'en.

Backup'en afsluttet "dato + tid" ialt kopieret XXXX filer X.x Gb

Er det muligt og ikke mindst hvordan?

Takker
Vedelsby
Avatar billede bertelbrander Novice
28. august 2003 - 20:51 #1
Hvis du bruger windows 2000/XP kan du bruge følgende "kommando" til at skrive tid og dato:
echo Backup'en afsluttet %date% %time%
Man kan ikke umidelbart se hvor mange bytes der er flyttet men godt hvor mange filer der er flyttet.
Hviket OS bruger du? Man kan næsten intet i Win9x.
Hvis du viser os dit script kan jeg måske tilføje udskrivning af antal filer (og måske antal bytes hvis det er vigtigt).
Avatar billede vedelsby Nybegynder
10. september 2003 - 14:24 #2
Hejsa bertel..
Takker for dit svar..
Jeg bruger XP, så vil med det samme tilføje dine to kommandoer.
Antal filer vil være tilstrækkeligt, det er mere til kontrol for at alt er kørt og den ikke er blevet afbrudt etc.
Har du eventuelt et link til hvor jeg kan finde kommandoerne?

Husk svar, hvis du vil have point ;)
Takker
Vedelsby
Avatar billede bertelbrander Novice
10. september 2003 - 20:41 #3
Man kan bruge følgende kommando til at kopiere og finde ud af hvor mange filer der blev kopieret:

for /F %%I in ('xcopy *.* tt ^| findstr /C:"File(s) copied"') do echo %%I

Her udskriver den blot antallet af filer der blev kopieret.

Hvis du har flere linier kan du lægge tallene sammen:
Set /A NumFiles=0
for /F %%I in ('xcopy *.* dest1 ^| findstr /C:"File(s) copied"') do set /A NumFiles += %%I
for /F %%I in ('xcopy *.* dest2 ^| findstr /C:"File(s) copied"') do set /A NumFiles += %%I
Og så udskrive til slut:
echo %NumFiles%

Hvis din XP ikke skriver "File(s) copied" når den er færdig med at kopiere, men noget andet, skal du udskifte det der står efter findstr med det den skriver.

Du kan læse om for og findstr ved at skrive "help for" og "help findstr" i en kommando prompt eller ved at søge efter batch i Start->help.
Avatar billede vedelsby Nybegynder
15. september 2003 - 09:30 #4
Mange tak for dit svar..
Det er meget brugbart.
Jeg ved ikke om det er for meget, men kunne du kort beskrive hvad de enkelte funktioner står for, så jeg ikke skal skrive til dig igen når jeg skal have justeret det.. ;0)

Og forresten gider du ikke skrive som svar?
Mange tak
Martin
Avatar billede bertelbrander Novice
15. september 2003 - 20:35 #5
Det man gør i for linierne er:

1: Kør kommandoen xcopy *.* dest1 (dvs alt fra den første ' til |)

2: Køre output herfra gennem findstr, der her virker som et filter og fjerner alle linier fra xcopy kommandoen der ikke indeholder "File(s) copied"

3: Output herfra (fx "5 File(s) copied") køres gennem en for-løkke (da der kune er en linie, sker det kun en gang), og %%I assignes til det første ord i linen (i dette tilfælde 5).

4: Det der står efter do bliver så kørt hvor %%I er antallet af filer der blev kopieret. Kommandoen set /A bruges til at regne med, NumFiles += %%I betyder at %%I (antalet af filer der blev kopieret, 5) bliver lagt til variablen NumFiles.

5: Set /A NumFiles=0 betyder blot: Sæt variablen NumFiles til 0

6: echo %NumFiles% udskrive variablen NumFiles

Jeg forsøger i reglen at undgå at få point.
Avatar billede vedelsby Nybegynder
17. september 2003 - 09:51 #6
Ja det lagde jeg mærke til..
Heh-heh.. Meget sympatisk et eller andet sted.
Tak for hjælpen!
Avatar billede vedelsby Nybegynder
24. september 2003 - 14:18 #7
Lukker snart sidste chance...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester