Avatar billede happyface Nybegynder
20. september 2000 - 19:56 Der er 7 kommentarer og
1 løsning

Batchprogram til FTP-server.

Jeg har et lille problem som jeg håber, at I kan løse for mig!

Jeg skal bruge en batchfil som dagligt og automatisk eksekveres når der på ftp-serveren tages backup.

Det vil sige, at backup-filen skal omdøbes hver dag, og gemmes som dag1, dag2 osv. på den aktuelle sti, hvor backup-filen ligger.

Problemet er, at den eksisterende backup-fil overskrives hverdag, og det skulle den helst ikke, da det er ønskeligt, at jeg skulle kunne hente en hvilken som helst dag til senere brug.

Hvem har mod på den!?
Avatar billede codpiece Nybegynder
20. september 2000 - 20:10 #1
Hvilken platform skal bat-filen køre på (NT, win95 eller unix)?

Er der tale om backup af en eller flere filer?

// codpiece
Avatar billede happyface Nybegynder
20. september 2000 - 20:23 #2
Nåh ja ;-)

Platformen er NT og det er kun en fil det drejer sig om.
Avatar billede codpiece Nybegynder
20. september 2000 - 22:19 #3
Prøv denne her. Du skal rette variablerne i starten af scriptet:

file=readme.txt                          - filnavn, minus directory
server=ftp.danadata.dk              - ftp-serveren
ftpdir=/pub/mcafee                    - biblioteket på ftp-serveren
user=anonymous                        - skal evt rettes
pass=ftp-password@forum.dk      - emailadresse er godt nok hvis user=anonymous
mode=bin                                  - (eller ascii, hvis der er tale om rene tekstfiler)
backup-drev=c:                        - hvor vil du gemme filerne, hvilket drev
backup-dir=\\backup                    - hvor vil du gemme filerne, hvilket bibliotek

Jeg har brugt pkzip til at lave en fil, der hedder dag1.zip ... dag9999.zip men det kan du selvfølgelig ændre (de sidste par linjer)

Klip herfra:

-8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<--
@echo off
REM ftp-back.cmd - by codpiece
REM Først lidt variabler:
set file=hosts
set server=saturn
set user=anonymous
set pass=ftp-password@forum.dk
set ftpdir=/alpha
set mode=bin
REM set mode=ascii
set backup-drev=c:
set backup-dir=\\backup

REM Selve ftp-delen
%backup-drev%
cd %backup-dir%

REM Laver ftp-script til senere
echo user %user% %pass% > getback.scr
echo cd %ftpdir% >> getback.scr
echo %mode% >> getback.scr
echo get %file% >> getback.scr
echo cd / >> getback.scr
echo bye >> getback.scr

:doit
ftp -s:getback.scr -n -v %server%

if exist %file% goto save

echo %file% ikke fundet, problemer med ftp?
goto exit

:save
REM Find sidst benyttede file:
for /l %%f in (1, 1, 9999) do if exist dag%%f.zip set last=%%f

REM Tæl baglæns for at finde første *ikke* benyttede file
for /l %%f in (9999, -1, 1) do if not exist dag%%f.zip set next=%%f

pkzip -m dag%next%.zip %file%
dir dag%next%.zip

:exit
-8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<--

H&L

Codpiece
Avatar billede codpiece Nybegynder
20. september 2000 - 22:20 #4
ups - linjen
set pass=ftp-password@forum.dk\">pass=ftp-password@forum.dk

skal selvfølgelig være set pass=ftp-password-snabela-forum.dk

// Codpiece
Avatar billede codpiece Nybegynder
20. september 2000 - 22:46 #5
Endnu en fejl:

REM Tæl baglæns for at finde første *ikke* benyttede file
for /l %%f in (9999, -1, 1) do if not exist dag%%f.zip set next=%%f

skal være:
REM Tæl baglæns for at finde første *ikke* benyttede file
for /l %%f in (9999, -1, %last%) do if not exist dag%%f.zip set next=%%f

//  Codpiece
Avatar billede codpiece Nybegynder
24. september 2000 - 14:00 #6
ahem happyface - virker det?

// codpiece
Avatar billede codpiece Nybegynder
02. oktober 2000 - 14:04 #7
Klar til Cut & Paste:

-8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<--
@echo off
REM ftp-back.cmd - by codpiece
REM Først lidt variabler:
set file=filnavn.txt
set server=servernavn
set user=brugernavn
set pass=ftp-password
set ftpdir=/pub/
set mode=bin
REM set mode=ascii
set backup-drev=c:
set backup-dir=\\backup

REM Selve ftp-delen
%backup-drev%
cd %backup-dir%

REM Laver ftp-script til senere
echo user %user% %pass% > getback.scr
echo cd %ftpdir% >> getback.scr
echo %mode% >> getback.scr
echo get %file% >> getback.scr
echo cd / >> getback.scr
echo bye >> getback.scr

:doit
ftp -s:getback.scr -n -v %server%

if exist %file% goto save

echo %file% ikke fundet, problemer med ftp?
goto exit

:save
REM Find sidst benyttede file:
for /l %%f in (1, 1, 9999) do if exist dag%%f.zip set last=%%f

REM Tæl baglæns for at finde første *ikke* benyttede file
for /l %%f in (9999, -1, %last%) do if not exist dag%%f.zip set next=%%f

pkzip -m dag%next%.zip %file%
dir dag%next%.zip

:exit
-8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<---8<--
Avatar billede happyface Nybegynder
05. oktober 2000 - 20:30 #8
Okay!!! Langt om længe fik jeg banditten til at virke....YES!!!!

Thx:-)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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