Archief - [PROG]windows/linux windows batch file op linux server

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

jeronimo

Legacy Member
hallo,
Ik heb hier een paar presentatie's dat ik moet doen. nu staat er hier onderaan de pagina nog een opdracht waar ik wat problemen mee heb.


ik moet een ftp-batch-script maken.

dus ik zit op een windows pc en ik klik op het batchfileke dan word mijn presentatie over gezet naar een linux ftp server die naast mij staat.

dat moet automatisch. dan moet ik inloggen via browser op ftp server en dan men files weer downen.

kan iemand mij helpen?

groeten jeroen

ShPonGle

Legacy Member
ik gebruik daar een batfile + een script(txt)file voor:

enkel dit in de batfile zetten:

%windir%\system32\ftp.exe -s:"c:\script.txt"

dit staat in die script.txt:

open 192.168.1.1 (bvb ipadres linux server)
login
password
cd ftpmapke
binary
hash
lcd c:\map-waar-de-te-uploaden-files-staan
put file.xml
put test.txt
bye

je kan vervolgens een shellscript op de linux maken met een GET-opdracht om ook het downloaden te automatiseren, op windows zou je gewoon PUT moeten vervangen door GET

jeronimo

Legacy Member
kdenk dak zoiets moe hemme.


thx eh.. es probere


cd ftpmapke
binary
hash


cd daarachter mapke van op de ftp server.

binary stands for?
hash stands for?

dan snapk het een beke eh

Albireo

Legacy Member
alle FTP commando's

binary is een manier van data verzenden, een andere manier is ascii. ascii mag je enkel voor bestanden die tekst bevatten (html,php,txt,...) gebruiken. Een bestand met binaire data als ascii verzenden kan problemen geven. Maar binary gebruiken kan nooit kwaad. Zo hebben ze mij toch 12 jaar geleden verteld en blijkbaar hadden ze gelijk want dat swf bestand dat ik bij wijze van test als ascii heb verzonden werkt niet goed meer.

hash activeert een soort van progressbar, voor elke 2kB die verzonden is wordt een # weergegeven.

forloRn_

Legacy Member
Bestanden doorsturen als ascii zorgt ervoor dat newlines geconverteerd worden (bijvoorbeeld van \r\n op Windows naar \n op Linux), zodat tekstbestanden op het doelplatform nog steeds leesbaar blijven. Doe dat op een binair bestand en het is goed om zeep.

jeronimo

Legacy Member
hij verbind en dan freezed hem eve..

ma bon kzoek wel eve verder....

de file komt niet toe in de ftp map.

jeronimo

Legacy Member
goed het werkt.

ik super fier laten tonen.en dan zei hij: ma in uw script ziede uw gebruikersnaam en paswoord..

Hoe kan ik nu .. als ik de .bat laat lopen een schermke krijge waar ik mijn gebruikersnaam en pass moet ingeven?

dat zou veiliger zijn.

ArnoDF

Legacy Member
op linux is dit gemakkelijk met zenity maar ik heb nog geen windows equivalent gevonden.

jeronimo

Legacy Member
als ik erheen connect dan krijg ik het wel eh


vb: ftp://users.pandora.be/
zoals daar waar je gebruikersnaam enzo moet ingeven. maar hoe via bat?

of ergens in mijn script zette ofz.?

iemand?

Albireo

Legacy Member
Onderstaande batch-code werkt, het idee is om het batch bestand aan te roepen met als parameters login en password ("batchftp.bat mylogin mypwd" -> mylogin is %1 en mypwd wordt opgeslagen in %2). Vervolgens ga je vanuit het batchbestand een tijdelijk ftp-script schrijven waarna je dat ftp-script aanroept via ftp -s:[filename]. Tenslotte verwijder je dat ftp-script weer.

De eerste ECHO naar %file% doe ik met > ipv >> om ervoor te zorgen dat als het bestand al zou bestaan dat het overschreven zou worden (>> voegt toe aan een bestand).

I.p.v. van je batch bestand met parameters op te roepen kan je het batchbestand ook laten vragen om login en password via SET /P.

Code:
ECHO OFF
SET file=%temp%\ftpscript.txt
ECHO open users.telenet.be>%file%
ECHO %1>>%file%
ECHO %2>>%file%
ECHO cd test>>%file%
ECHO ls>>%file%
ECHO hash>>%file%
ECHO lcd e:\flotspe\www\flotspe.telenet>>%file%
ECHO binary>>%file%
ECHO put quarkdance.swf>>%file%
ECHO quit>>%file%
ftp -s:%file%
DEL %file%

jeronimo

Legacy Member
@echo off

echo open 10.1.0.203 > test.txt

IF "%1"=="" goto input
IF "%2"=="" goto input

echo %1 >> test.txt
echo %2 >> test.txt

:file
echo cd / >> test.txt
echo binary >> test.txt
echo hash >> test.txt
echo lcd fileke.ppt >> test.txt
echo put file.xml >> test.txt
echo put test.txt >> test.txt
echo bye >> test.txt
goto end

:input
echo ---------------------------------------
echo voer uw username in
echo ---------------------------------------
start /w wscript.exe vba.vbs
call ~userin.bat
del ~userin.bat
echo %USERIN% >> test.txt
echo username: %USERIN%
echo ---------------------------------------
echo voer uw passwoord in
echo ---------------------------------------
start /w wscript.exe vba2.vbs
call ~userin.bat
del ~userin.bat
echo %USERIN% >> test.txt
echo passwoord: %USERIN%
echo ---------------------------------------

goto file

:end
@pause
::hier moet de ftp-file laten aanroepen
del test.txt

dit is het nu.. ziet er al vrij goed uit denk ik
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan