/ Forside / Teknologi / Operativsystemer / MS Windows / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
MS Windows
#NavnPoint
Klaudi 76474
o.v.n. 67550
refi 58409
tedd 45557
Manse9933 45149
molokyle 40687
miritdk 38357
briani 27239
BjarneD 26414
10  pallebhan.. 24310
Kopiere kun nyeste fil med følgende indhol~
Fra : Moe


Dato : 04-05-05 15:26

Jeg har et CMD batchfil, hvori jeg dagligt tager en backup med NTBACKUP.
NTBACKUP glimre jo med sit fravær af en parameter til at specificere en
logfil, så jeg har fundet frem til, at mest optimale måde er, at
kopiere nyeste NTBACKUP logfil med et bestemt indhold således, at jeg
kan sammenholde backup med logfilen.

NTBACKUP gemmer sine logfiler i "%USERPROFILE%\Local
Settings\Application Data\Microsoft\Windows NT\NTBackup\data" og jeg vil
gerne kopiere den nyeste fil med et givent indhold (f.eks. "Diff
backup") til et givent sted.

Jeg går ud fra, at det kræver VBScript?

 
 
Bertel Brander (04-05-2005)
Kommentar
Fra : Bertel Brander


Dato : 04-05-05 22:44

Moe wrote:
> Jeg har et CMD batchfil, hvori jeg dagligt tager en backup med NTBACKUP.
> NTBACKUP glimre jo med sit fravær af en parameter til at specificere en
> logfil, så jeg har fundet frem til, at mest optimale måde er, at
> kopiere nyeste NTBACKUP logfil med et bestemt indhold således, at jeg
> kan sammenholde backup med logfilen.
>
> NTBACKUP gemmer sine logfiler i "%USERPROFILE%\Local
> Settings\Application Data\Microsoft\Windows NT\NTBackup\data" og jeg vil
> gerne kopiere den nyeste fil med et givent indhold (f.eks. "Diff
> backup") til et givent sted.

En lille bat fil der finder den nyeste fil i en mappen
"%USERPROFILE%\SendTo\", den sætter %First%


@echo off
set First=
Set CheckDir="%USERPROFILE%\SendTo\"

for /F "tokens=*" %%I in ('dir %CheckDir% /B /A-D /O-D') do call
:Process "%%I"
echo Den nyeste fil er %First%
goto :eof

:Process
if NOT [%First%]==[] goto :eof
set First=%1
goto :eof

--
Absolutely not the best homepage on the net:
http://home20.inet.tele.dk/midgaard
But it's mine - Bertel

Moe (06-05-2005)
Kommentar
Fra : Moe


Dato : 06-05-05 10:06

> @echo off
> set First=
> Set CheckDir="%USERPROFILE%\SendTo\"
>
> for /F "tokens=*" %%I in ('dir %CheckDir% /B /A-D /O-D') do call
> :Process "%%I"
> echo Den nyeste fil er %First%
> goto :eof
>
> :Process
> if NOT [%First%]==[] goto :eof
> set First=%1
> goto :eof

Den kan godt finde den nyeste fil, men den sætter "" rundt om filnavnet
og så kan jeg ikke kopiere filen fra "%USERPROFILE%\blaa\%First%" til et
andet sted.

"%USERPROFILE%\blaa\%First%" = "C:\Docum...\blaa\"logfile02.log""

Bertel Brander (06-05-2005)
Kommentar
Fra : Bertel Brander


Dato : 06-05-05 14:32

Moe wrote:
> Den kan godt finde den nyeste fil, men den sætter "" rundt om filnavnet
> og så kan jeg ikke kopiere filen fra "%USERPROFILE%\blaa\%First%" til et
> andet sted.
>
> "%USERPROFILE%\blaa\%First%" = "C:\Docum...\blaa\"logfile02.log""

Man kan godt bruge:
copy %CheckDir%%First% C:\temp

Hvis du er sikker på at der ikke er mellemrum i filnavnet kan du
ændre linien med for til:

for /F "tokens=*" %%I in ('dir %CheckDir% /B /A-D /O-D') do call
:Process %%I

Dvs fjene "" omkring den sidste %%I

--
Absolutely not the best homepage on the net:
http://home20.inet.tele.dk/midgaard
But it's mine - Bertel

Moe (06-05-2005)
Kommentar
Fra : Moe


Dato : 06-05-05 16:37

> Man kan godt bruge:
> copy %CheckDir%%First% C:\temp

Ahh.. okay. Tak for det (det virker).

Søg
Reklame
Statistik
Spørgsmål : 177511
Tips : 31968
Nyheder : 719565
Indlæg : 6408590
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste