Entweder curl
oder wget
kann in diesem Fall verwendet werden. Alle 3 dieser Befehle tun dasselbe, sie laden die Datei unter http://path/to/file.txt herunter und speichern sie lokal als "my_file.txt".
Beachten Sie, dass in allen unten stehenden Befehlen auch die Verwendung der Option -L
oder --location
mit curl
empfohlen wird, um HTML-302-Weiterleitungen zur neuen Position der Datei zu folgen, wenn sie verschoben wurde.wget
benötigt keine zusätzlichen Optionen, um dies automatisch zu tun.
# speichere die Datei lokal als my_file.txt
wget http://path/to/file.txt -O my_file.txt # mein Favorit--hat eine Fortschrittsanzeige
curl -L http://path/to/file.txt -o my_file.txt
curl -L http://path/to/file.txt > my_file.txt
Alternativ, um die Datei lokal mit demselben Namen wie auf dem Server zu speichern, verwenden Sie entweder wget
allein oder curl
mit -O
oder --remote-name
:
# speichere die Datei lokal als file.txt
wget http://path/to/file.txt
curl -LO http://path/to/file.txt
curl -L --remote-name http://path/to/file.txt
Beachten Sie, dass das -O
in allen oben aufgeführten Befehlen der Großbuchstabe "O" ist.
Das Schöne am wget
-Befehl ist, dass er eine schöne Fortschrittsanzeige anzeigt.
Sie können beweisen, dass die Dateien, die mit jedem der oben beschriebenen 3 Techniken heruntergeladen wurden, genau identisch sind, indem Sie ihre sha512-Hashes vergleichen. Das Ausführen von sha512sum my_file.txt
nach dem Ausführen der oben stehenden Befehle und Vergleichen der Ergebnisse zeigt, dass alle 3 Dateien die exakt gleichen sha-Hashes (sha-sums) haben, was bedeutet, dass die Dateien byte-für-byte identisch sind.
Verweise
- Ich habe hier über die
-L
-Option mit curl
erfahren: Gibt es eine Möglichkeit, Umleitungen mit dem Befehlszeilen-cURL zu folgen?
Siehe auch: <a href="https://stackoverflow.com/a/69411327/4561887">Wie man cURL-Ausgabe in eine Datei umleitet?</a>