Ingebouwde FTP-client van windows aansturen met een script

Pagina: 1
Acties:
  • 108 views sinds 30-01-2008
  • Reageer

  • Gorgelmuil
  • Registratie: Juni 2004
  • Laatst online: 17:42
Je kunt via de ingebakken FTP-client van windows bepaalde acties automagiseren doormiddel van simpele Batch-scriptjes.

Wat ik wil is redelijk eenvoudig:
Open een shell
Open een ftp-host
Log in met username en wachtwoord
bekijk een directory
sluit de connectie
sluit de shell

Dit zou in principe kunnen door onderstaande regels:
Afbeeldingslocatie: http://uploaded.flavor.nl/n/2441.jpg

Maar de output is wat minder; hij blijft hangen op regel 1. (Het openen van het daadwerkelijke FTP-programma.
Afbeeldingslocatie: http://uploaded.flavor.nl/n/2442.jpg
Wat doe ik fout? :?
Ik heb enige informatie gevonden op Computerhope.com, maar ik kom er niet uit...

Alvast dank voor uw hulp! :)

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB/AI

Front verplichte underscores

Wat doe ik fout? :?
De batchfile wacht tot ftp is afgesloten voordat de volgende regel wordt gedraaid :P

Gebruik de '-s' switch, of een willekeurige andere scriptable ftp client. Trouwens WOS -> CSA.

[ Voor 5% gewijzigd door F_J_K op 16-10-2007 15:56 ]

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Gorgelmuil
  • Registratie: Juni 2004
  • Laatst online: 17:42
Ok, de -s, wat doet het en waar moet ik die verwerken? Na elke regel? Wil je -s gebruiken om een tekstbestand aan te roepen met commando's?

  • Comgenie
  • Registratie: Oktober 2005
  • Laatst online: 09-07 00:24

Comgenie

Soms heb je dat

je kan via de ftp command een soort scripting file inladen, lijkt op batch.
edit:
Using FTP Batch Scripts
ziehier, met voorbeelden =)

tevens eerste result op google
http://www.google.nl/sear...+ftp+command+script&meta=

[ Voor 52% gewijzigd door Comgenie op 16-10-2007 16:07 ]

No animals were harmed in the making of this comment.


  • rvvliet
  • Registratie: September 2004
  • Laatst online: 16-07 08:44
Je kunt een apart bestand maken met de FTP commando's

open {ipadres}
user
{username}
{password}
dir
bye

en dan in een bat filetje:
ftp -n -s:scriptnaam.txt

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB/AI

Front verplichte underscores

Gorgelmuil schreef op dinsdag 16 oktober 2007 @ 16:02:
Ok, de -s, wat doet het en waar moet ik die verwerken? Na elke regel? Wil je -s gebruiken om een tekstbestand aan te roepen met commando's?
Daar is help voor uitgevonden:

C:\>ftp -?

Transfers files to and from a computer running an FTP server service
(sometimes called a daemon). Ftp can be used interactively.

FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-w:windowsize] [-A] [host]

  -v             Suppresses display of remote server responses.
  -n             Suppresses auto-login upon initial connection.
  -i             Turns off interactive prompting during multiple file
                 transfers.
  -d             Enables debugging.
  -g             Disables filename globbing (see GLOB command).
  -s:filename    Specifies a text file containing FTP commands; the
                 commands will automatically run after FTP starts.
  -a             Use any local interface when binding data connection.
  -A             login as anonymous.
  -w:buffersize  Overrides the default transfer buffer size of 4096.
  host           Specifies the host name or IP address of the remote
                 host to connect to.

Notes:
  - mget and mput commands take y/n/q for yes/no/quit.
  - Use Control-C to abort commands.

:Y)

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Gorgelmuil
  • Registratie: Juni 2004
  • Laatst online: 17:42
Ok, dank voor jullie hulp!
Helaasch werkt het nog niet helemaal zoals ik zou willen.

Wat ik probeer te bereiken is dat een programma een bepaald mapje (ftp) op regelmatige basis bekijkt of er bestanden staan, deze vervolgens download en de originele bestanden van de ftp-site verwijdert. De bestanden die in dit mapje staan, zijn altijd van dezelfde soort (.ppf).

Ik wil dit doen middels het programma Cobian Backup, wat nadat hij klaar is met downloaden een script uitvoert. Dit script (script.bat) voert een lijst commando's uit waarmee de bestanden weg gegooid moeten worden.

script.bat:
code:
1
ftp -s:commands.txt 255.255.255.255


commands.txt:
code:
1
2
3
4
5
6
7
loginnaampje
wachtwoordje
prompt
cd Mapje/mapje2
delete *.ppf
close
bye


Bij het verwijderen gaat het fout:
quote: FTP-server
450 File/Dir '/Mapje/mapje2/*.ppf' can't be deleted.
Wat doe ik in hemelsnaam fout? :?
Als ik met een echte ftp client naar dat mapje ga, dan heb ik wel rechten om bestanden weg te gooien, dus daar ligt het niet aan...

  • Gorgelmuil
  • Registratie: Juni 2004
  • Laatst online: 17:42
Ik heb het probleem nog niet gevonden, beetje jammer. Het is geen optie om het commando "delete bestandsnaam.ext" te gebruiken, want de bestandsnaam is elke keer anders.

Iemand een idee?

  • kaajee
  • Registratie: November 2002
  • Laatst online: 28-04 07:15
Gorgelmuil schreef op vrijdag 19 oktober 2007 @ 09:15:
Ik heb het probleem nog niet gevonden, beetje jammer. Het is geen optie om het commando "delete bestandsnaam.ext" te gebruiken, want de bestandsnaam is elke keer anders.

Iemand een idee?
En daar hebben ze nou weer mdelete voor bedacht....... :P (zelf even zoeken op bijv. ftp mulitple file delete of wildcard oid en je had het binnen 5 sec. gevonden)

Dan krijg je bijv. een volgend rijtje:
code:
1
2
3
prompt                  om 'bevestigen' uit te zetten, maar die had je al.....
mdelete *.ppf           verwijderd alle ppf bestanden
prompt                  evt. om bevestigen weer aan te zetten

[ Voor 4% gewijzigd door kaajee op 19-10-2007 09:36 ]


  • Gorgelmuil
  • Registratie: Juni 2004
  • Laatst online: 17:42
|:( Had ik kunnen weten..

Het werkt nu, dank!!!
Pagina: 1