it-swarm.com.de

Wie kann ich eine Datei mit korrektem Namen bei der Weiterleitung markieren?

Nach einiger Zeit der Suche in Google und Super User (und des Scannens von Manpages) konnte ich keine Antwort auf etwas finden, das (meiner Meinung nach) einfach sein sollte:

Wenn Sie hier hingehen:

http://www.vim.org/scripts/script.php?script_id=2340

Und versuchen Sie, das Thema herunterzuladen:

http://www.vim.org/scripts/download_script.php?src_id=9750

Wie so:

wget http://www.vim.org/scripts/download_script.php?src_id=9750

Sie werden wahrscheinlich eine Datei mit dem Namen download_script.php?src_id=9750 erhalten.

Aber ich möchte, dass es molokai.vim heißt, was passieren würde, wenn ich einen Browser zum Herunterladen dieser Datei verwenden würde.

Welche Optionen muss ich für wget angeben, um den gewünschten Effekt zu erzielen?

Ich würde auch einen Curl-äquivalenten Befehl akzeptieren.

113
audio.zoom
-O file
--output-document=file

Die Dokumente werden nicht in die entsprechenden Dateien geschrieben, sondern alle zusammen verkettet und in eine Datei geschrieben. Wenn - als Datei verwendet wird, werden Dokumente auf die Standardausgabe gedruckt, wodurch die Linkkonvertierung deaktiviert wird. (Verwenden Sie ./-, um in eine Datei mit dem wörtlichen Namen -. zu drucken.)

So,

wget -O somefile.extension http://www.vim.org/scripts/download_script.php?src_id=9750

Oder Sie können wget veranlassen, dies mithilfe der Option --content-disposition zu ermitteln, sofern dies von Ihrer Version unterstützt wird.

wget --content-disposition http://www.vim.org/scripts/download_script.php?src_id=9750

Vorsichtsmaßnahmen gemäß der Manpage,

--content-disposition

Wenn diese Option aktiviert ist, wird die experimentelle (nicht voll funktionsfähige) Unterstützung für "Content-Disposition" -Kopfzeilen aktiviert. Dies kann derzeit zu zusätzlichen Roundtrips zum Server für eine "HEAD" -Anforderung führen und es treten bekanntermaßen einige Fehler auf, weshalb die Option derzeit nicht standardmäßig aktiviert ist.

Diese Option ist nützlich für einige CGI-Programme zum Herunterladen von Dateien, die "Content-Disposition" -Header verwenden, um den Namen einer heruntergeladenen Datei zu beschreiben.

Sie können dasselbe automatisierte Verhalten mit curl erreichen, indem Sie

curl -JLO http://www.vim.org/scripts/download_script.php?src_id=9750

-O verwendet den fernen Namen, und -J erzwingt, dass der -O diesen Namen aus dem Header der Inhaltsdisposition anstelle der URL abruft, und -L folgt bei Bedarf Weiterleitungen.

158
EightBitTony

Mit wget können Sie dies tun:

wget --trust-server-names <url> 

um die Datei unter dem letzten vom Server angegebenen Dateinamen zu speichern.

73

Sie könnten auch aria2c - verwenden. Es scheint gut mit den Content-Disposition-Headern zusammenzuarbeiten.

3
dkam

Nur fyi curl leitet gut um, also sollte es funktionieren, Ich denke , für das, wonach Sie suchen.

curl -o molokai.vim http://www.vim.org/scripts/download_script.php?src_id=9750

0
Dan M.

Arbeitete wie folgt:

curl -o molokai.vim http://www.vim.org/scripts/download_script.php?src_id=9750

wget -O somefile.extension http://www.vim.org/scripts/download_script.php?src_id=9750

(Groß-/Kleinschreibung geändert, d. h. (wget -O) bis (wget -o)

0
Zahid Hussain