Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Datenübertragung SFTP u. SCP per Batch ?

Frage Entwicklung Batch & Shell

Mitglied: Landstreicher

Landstreicher (Level 1) - Jetzt verbinden

30.08.2007, aktualisiert 11.09.2007, 17518 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

Mit freundlichen Grüßen 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 ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(5)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Per Batch, SFTP öffnen (4)

Frage von Doppellhelix zum Thema Batch & Shell ...

Batch & Shell
Batch zum bearbeiten mehrerer CSV (2)

Frage von Matzus87 zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (17)

Frage von Unwichtig zum Thema Netzwerkmanagement ...