So laden Sie Dateien von der FTP-Site in einer Befehlszeile ohne Benutzerinteraktion herunter (Windows)
Ich weiß, dass es einen FTP-Befehl gibt, der über die Befehlszeile unter Windows ausgeführt werden kann, und er lädt eine Datei von einer FTP-Site herunter. User + password werden in "that" einzeiliges cmd angegeben. Diese Optionen + Passwort passtrough sollten sich in dieser Befehlszeile befinden.
echo open 192.168.1.64 21> ftp.txt
echo anonymous>> ftp.txt
echo [email protected]>> ftp.txt
echo bin >> ftp.txt
echo get test.txt >> ftp.txt
echo bye >> ftp.txt
ftp -s:ftp.txt
4 answers
Versuchen Sie dies: Batch-Dateien-Unbeaufsichtigte FTP-Downloads
WGET ftp://ftp.mydomain.com/path/file.ext
Für anonyme downloads
Oder:
WGET ftp://user:[email protected]/path/file.ext
Wenn Authentifizierung erforderlich ist.
Wie @XavierStuvw über Bearbeitungen und Kommentare darauf hingewiesen hat, würde das Austauschen von WGET
in Kleinbuchstaben wget
unter Linux funktionieren.
wget ftp://user:[email protected]/path/file.ext
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-08 17:01:12
Ich fand den Weg:
echo open 192.168.0.1 >> ftp &echo user admin w00t >> ftp &echo binary >> ftp &echo get file.zip >> ftp &echo bye >> ftp &ftp -n -v -s:ftp &del ftp
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-01-11 10:41:13
Beachten Sie, dass Sie mit dem Befehl /nach der Syntax eines Befehls in DOS fragen können. Schalter. Beispiel:
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] [-A] [-x:sendbuffer] [-r:recvbuf fer] [-b:asyncbuffers] [-w:windowsize] [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. -x:send sockbuf Overrides the default SO_SNDBUF size of 8192. -r:recv sockbuf Overrides the default SO_RCVBUF size of 8192. -b:async count Overrides the default async count of 3 -w:windowsize Overrides the default transfer buffer size of 65535. 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.
In Ihrem Fall möchten Sie den Schalter-s verwenden, um ihm ein Skript einschließlich der Anmeldeantworten zuzuführen.
Zum Beispiel:
-
Eine Skriptdatei erstellen (c:\scriptfile.txt) mit folgendem Inhalt:
open servername_or_ip username password get /fullpath/thefile.txt c:\fullpath\thefile.txt quit
-
Führen Sie ftp mit dem Schalter-s aus und geben Sie den Skriptdateinamen an
C:\>ftp -s:c:\scriptfile.txt
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-02-20 17:03:30
Hier ist eine andere Lösung, wie Sie alle Dateien von einem Remote-Server-Ordner in Ihren lokalen Ordner herunterladen können, indem Sie die Befehlszeile und winscp-Skripte verwenden:
-
WinSCP herunterladen und installieren: https://winscp.net/eng/download.php
-
Erstellen Sie eine batch-Datei z.B. "ftp-Automatisierung.bat" in einem benutzerdefinierten Ordner Ihrer Wahl (z.B. "C:\customfolder").
-
Bearbeiten Sie die batch-Datei "ftp-Automatisierung.bat", und fügen Sie diese content:
@echo off
echo Starting WinSCP
"C:\Program Files (x86)\WinSCP\WinSCP.com" /script="C:\customfolder\winscp-script.txt"
echo WinSCP finished
- Erstellen Sie die Datei "winscp-Skript.txt" in "C:\customfolder\winscp-script.txt" und fügen Sie diesen Inhalt hinzu:
# Connect to SFTP server
open sftp://USERNAME:PASSWORD@HOSTORIP
# Download remote to local folder
get /var/lib/myfolderofinterest/* C:\mylocalfolder\
# optional: Remove remote files (remove #)
# rm /var/lib/myfolderofinterest/*
# Exit WINSCP
exit
Natürlich müssen Sie USERNAME
durch Ihren FTP-Benutzernamen, PASSWORD
durch Ihr FTP-Passwort und HOSTORIP
durch Ihre Domain ersetzen (ftp.mydomain.com) oder IP-Adresse (12.34.56.78).
Sicherheitshinweis: Stellen Sie sicher, dass die obige Skriptdatei auf Ihrem PC sicher ist, da sie die Anmeldeinformationen (Kennwort) für Ihren Server enthält!
Tipp: Möglicherweise möchten Sie den Windows-Taskplaner (Aktion > Grundlegende Aufgabe erstellen) verwenden, um die Batchdatei einmal täglich auszuführen.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-06-23 08:12:08