gelöst Datenübertragung SFTP u. SCP per Batch ?

Mitglied: Landstreicher

Landstreicher (Level 1) - Jetzt verbinden

30.08.2007, aktualisiert 11.09.2007, 27457 Aufrufe, 6 Kommentare

Hallo,

Ich habe folgendes Problem.
Ich muss Daten von einem Server holen, auf dem im moment noch FTP aktiv ist, was aber aus Sicherheitsgründen demnächst abgeschaltet wird.
Im mom. habe ich das ganz einfach gelöst

echo Erzeuge ftp-file
goto :create1
:eins1
echo --- starte FTP-Transfer...
ftp -s:hole_logfiles.ftp
echo --- fertig.
ping 127.0.0.1 -n 1 >nul
del hole_logfiles.ftp
goto :starten

:create1
Echo;
Echo erstelle FTP-File
echo open %zu%>>hole_logfiles.ftp
echo %name%>>hole_logfiles.ftp
echo %cword%>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo bin>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo prompt>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo cd /home/syscheck >>hole_logfiles.ftp
echo lcd C:\FTPDaten>>hole_logfiles.ftp
echo get e1check>>hole_logfiles.ftp
echo bye>>hole_logfiles.ftp
Echo file wurde erzeugt.
ping 127.0.0.1 -n 2 >nul
goto :eins1

Wird nun aber SFTP/SCP aktiviert, weiss ich nicht wie ich das weiter automatisiert betreiben kann, da Windows unter DOS, soweit mir bekannt ist, kein SFTP kennt.

kann mir da jemand helfen ?
Mitglied: Iwan
30.08.2007 um 11:31 Uhr
Als Kommandozeilen-Client empfiehlt sich PSFTP aus den PuTTY-Downloads: http://www.wintotal.de/Software/index.php?id=2350
Gib 'open servername' ein und authentifiziere Dich. Mit dem Befehl "help" kann man einen Blick auf die zur Verfügung stehenden Kommandos werfen, welche mit einer Funktionsbeschreibung versehen sind.
Bitte warten ..
Mitglied: DerBiba
30.08.2007 um 11:32 Uhr
WinSCP (winscp.net) ist kostenlos und unterstützt SFTP (FTP over SSH) als auch SCP und kann auch per Script genutzt werden.

Details dazu findest du in den englischen FAQ's unter http://winscp.net/eng/docs/scripting

Falls SFTP aber FTP over SSL, also eigentlich "FTPS" gemeint war (wird sehr oft durcheinander geworfen), dann kannst du Core FTP LE nutzen. Ebenfalls kostenlos und erhältlich unter coreftp.com.

So long.

Biba
Bitte warten ..
Mitglied: Landstreicher
03.09.2007 um 12:41 Uhr
Hi Biber,

danke für den Link, aber für mich ist da nicht ganz ersichtlich wie ich das nun in eine Batch packen kann.

hast du eine lösung für mich parat ? ;)

gruß landstreicher
Bitte warten ..
Mitglied: DerBiba
03.09.2007 um 13:17 Uhr
Servus Landstreicher,

also parat nun nicht, aber wenn du mal bitte den Ablauf definierst was wann wie und wo passieren soll, dann kann ich dich gerne unterstützen. In deinem Beispiel hast du nämlich ein paar Variablen verwendet die sich mir nicht erklären. Und von welchem Tool sprechen wir denn da? WinSCP, CoreFTP? Und welche Protokoll wird genau verwendet? FTP over SSH oder FTP over SSL ?

zB. "echo open %zu%>>hole_logfiles.ftp"
Da erklärt sich mir aus deinem Code nicht, wer oder was %zu% ist.

Am besten in der Form:
01) Verbindung zum FTP
01a) Wo können die Logindaten (User/PWD) abgelegt werden? Im Script oder als sep. File ?
02) Übertrage Daten von FTP zu Lokal
02a) Was wenn diese Daten vorhanden sind?

Bedenke bitte möglichst vorab alle "Was-Wenn-Fragen", dann geht das alles recht fix, solange mich kein Kunde hier stört

Biba
Bitte warten ..
Mitglied: Landstreicher
03.09.2007 um 14:03 Uhr
ahja du hast recht habe ich ganz vergessen ;)

also:
echo open %zu%>>hole_logfiles.ftp ---> %zu% wurde vorher definiert set zu=rechnername
echo %name%>>hole_logfiles.ftp ---> %name% = user
echo %cword%>>hole_logfiles.ftp ---> %cword% = pw

ich habe aus einer batch ein temporäres ftp file erstellt welches dann kurz erstellt wird und anschliessend wieder gelsöcht wird (sicherheitstechnisch nicht das beste aber besser als nix)
das habe ich getan, damit man rechner, user und pw nicht so schnell findet.

die batch habe ich anschliessend in eine exe umgewandelt, das man auch hier nicht das pw rausfinden kann.

Ablauf:
doppelkick auf die ftp.exe
ftp datei wird erstellt:
echo Erzeuge ftp-file
goto :create1
:eins1
echo --- starte FTP-Transfer...
ftp -s:hole_logfiles.ftp
echo --- fertig.
ping 127.0.0.1 -n 1 >nul
del hole_logfiles.ftp
goto :starten

:create1
Echo;
Echo erstelle FTP-File, aufgaben abgearbeitet und anschliessend wieder gelöscht.
echo open %zu%>>hole_logfiles.ftp
echo %name%>>hole_logfiles.ftp
echo %cword%>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo bin>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo prompt>>hole_logfiles.ftp
echo.>>hole_logfiles.ftp
echo cd /home/syscheck >>hole_logfiles.ftp
echo lcd C:\FTPDaten>>hole_logfiles.ftp
echo get e1check>>hole_logfiles.ftp
echo bye>>hole_logfiles.ftp
Echo file wurde erzeugt.
ping 127.0.0.1 -n 2 >nul
goto :eins1


1) ???
1a)die etwas kritischeren daten wie User und PW sollten so sicher wie möglich versteckt werden.
2) ja die daten sollen local bzw. auch auf eine andere maschine übertragen werden.
2a) wenn die daten vorhanden sind, sollen sie einfach überschrieben werden, besser wäre natürlich eine abfrage, aber ich glaube nicht das das per ftp so einfach geht.

so nuun habe ich die qual der wahl .. entweder ich nutze winscp oder psftp. mir ist letztendlich wurscht welches tool ich am ende benutze, die hauptsache ist, ich bekomme das wieder in eine batch gebastelt.

ich hoffe ich habe keine fragen offen gelassen, wenn doch meld dich nochmal pr PN und lass dich nicht stressen :D

mfg landstreicher.
Bitte warten ..
Mitglied: Landstreicher
11.09.2007 um 10:02 Uhr
SOOOOO Problem gelöst.

ich benutze nun doch "psftp" und man glaubt es kaum ich übertrage nun und sichere vorher

hier mal meine bastelei...

@echo off
pushd "D:\PowerPlay\mdl"
echo zeige Models:
echo --------------------
echo;
for /f "delims=" %%i in ('dir /b /tc') do call :ProcessFile "%%i"
popd
goto :eof
:ProcessFile
echo setze Variablen
set "Variable=%~1"
echo %Variable%
goto :set


:set
echo .... verschiebe und uebertrage ....
echo cd /home/cognos/model/newModels > D:\ftpmdl.bat
echo lcd D:\PowerPlay\mdl >>D:\ftpmdl.bat
echo pwd >>D:\ftpmdl.bat
echo mv %Variable% backup/%Variable% >>D:\ftpmdl.bat
echo put %Variable% >>D:\ftpmdl.bat
echo bye >>D:\ftpmdl.bat
C:\Downloads\psftp.exe cognos@e8xxxxxxx.bxxxxxx.txxxxxxxx.de -pw soso -b D:\ftpmdl.bat
goto :eof

ein problem gibt es da allerdings, sind die dateien nicht vorhanden im zielverzeichnis und er soll ein move der datei in ein backupverzeichnis machen, werden die neuen files nicht übertragen.
das kann man soweit ich das getestet habe nur umgehen, wenn man die batch etwas umbaut und erst die dateien moved und dann überträgt.

sollte jemand besseres im angebot haben ... ich bin ganz hellhörig
Bitte warten ..
Ähnliche Inhalte
Windows Server
SFTP Freeware
gelöst Frage von adminstWindows Server8 Kommentare

Hallo zusammen Ich muss leider auf einem Windows Server einen SFTP Server betreiben für eine KMU. Die meisten Freeware ...

Router & Routing
SFTP durch Lancom Firewall
gelöst Frage von mcmaccaRouter & Routing8 Kommentare

Hallo zusammen, ich habe hier folgendes Problem bei dem ich aktuell leider nicht weiterkomme: Auf einer Synology Box läuft ...

Batch & Shell

BATCH Verschieben u. Sortieren Textdateien gemäß Metadaten

gelöst Frage von Airic87Batch & Shell13 Kommentare

Hallo an alle! ☺ Ich bin neu hier und arbeite gerade mit einer sprachwissenschaftlichen Datenbank, bei der sämtliche Texte ...

Batch & Shell

Wert in Batchdatei mit Batch suchen u. ersetzen

gelöst Frage von chef1568Batch & Shell4 Kommentare

Hallo zusammen, Ich habe ein Batch-Script das mir unterschiedliche Einstellungen am PC automatisiert durchführt. Ein Teil davon ist in ...

Utilities

SFTP: Synchronisationsclient a la Dropbox

Frage von eglipeterUtilities2 Kommentare

Hallo zusammen, Ich möchte gerne Dateien, die per SFTP zugänglich sind, auf meinem Client automatisch synchron halten. Mir schwebt ...

Batch & Shell

MS-Access MDB mit Batch öffnen, komprimieren u. reparieren

gelöst Frage von zeroblue2005Batch & Shell5 Kommentare

Hallo Zusammen, ich suche eine Möglichkeit via Batch eine MDB kurz zu öffnen, komprimieren, reparieren u. wieder zu schließen! ...

Heiß diskutierte Inhalte
Notebook & Zubehör
Macbook oder Surface Book 3?
gelöst Frage von FamousDex089Notebook & Zubehör36 Kommentare

Hallo Zusammen :-), ich bin komplett neu in der IT Admin schiene und neu in diesem Forum. Ich habe ...

Outlook & Mail
Outlook App auf Android
gelöst Frage von PeterGygerOutlook & Mail21 Kommentare

Hallo Folgende Situation: Samsung S3 Samsung S5 Mini Die Microsoft Outlook App kann nicht mehr gestartet werden. Es waren ...

SAN, NAS, DAS
Probleme mit der GIGABIT Leitung - Finden der Krücke - Wer ist schuld ?
gelöst Frage von daswinimramSAN, NAS, DAS16 Kommentare

Hallo Community , folgender Aufbau : "erfolgreich" umgestellt auf Gigabit Tarif am 26.09.20 Speedtests wurden von allen PCs hinter ...

Windows Server
AD (virtualisiert) und alle angeschlossenen Clients fahren ungeplant herunter
Frage von tobitobsnWindows Server15 Kommentare

Ich habe aktuell ein Problem, dass ein frisch aufgesetzer Hyper-V mit einem virtualisierten AD regelmäßig 1x die Woche herunterfährt ...

Windows Netzwerk
Firmennetzwerk mit 3 PC
gelöst Frage von greenhorn1Windows Netzwerk14 Kommentare

Hallo, ich bin neu in diesem Forum und hoffe, dass die Experten in diesem Forum auch mir mit meinen ...

Humor (lol)
So eine Art Jobangebot
Frage von Melvin.van.HorneHumor (lol)14 Kommentare

Moin, ich habe eben eine Zeit damit zugebracht eine GPO für eine Gruppe von Clients zu erstellen. Egal was ...

Berechtigungs- und IdentitätsmanagementBerechtigungs- und IdentitätsmanagementWebdienste und -serverWebdienste und -serverDatenbankenDatenbankenMonitoring & SupportMonitoring & SupportHybrid CloudHybrid CloudSmall Business ITSmall Business IT