GNU/Linux >> Linux の 問題 >  >> Linux

リダイレクトされたときに正しい名前のファイルを取得するにはどうすればよいですか?

-O file
--output-document=file
   
<ブロック引用>

ドキュメントは適切なファイルに書き込まれませんが、すべてが連結されてファイルに書き込まれます.If - をファイルとして使用すると、ドキュメントは標準出力に出力され、リンク変換が無効になります。 (./- を使用) 文字通り -. という名前のファイルに出力します )

だから、

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

または、 wget を取得できる場合があります 自動的に サーバーによって提案されたファイル名を使用します --content-disposition を使用 お使いのバージョンでサポートされている場合は、オプションを選択してください。

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

man ページにある注意事項

--content-disposition
<ブロック引用>

これがオンに設定されている場合、「Content-Disposition」ヘッダーの実験的な (完全に機能するわけではない) サポートが有効になります。これにより、現在、「HEAD」リクエストのサーバーへの余分なラウンドトリップが発生する可能性があり、いくつかのバグがあることが知られています。そのため、現在デフォルトで有効になっていません.

<ブロック引用>

このオプションは、「Content-Disposition」ヘッダーを使用してダウンロードしたファイルの名前を記述する一部のファイル ダウンロード CGI プログラムに役立ちます。

curl で同じ自動化された動作を実現できます 、使用、

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

-O リモート名と -J を使用 -O を強制します URL ではなく content-disposition ヘッダーからその名前を取得し、-L 必要に応じてリダイレクトに従います。


wget を使用すると、次のことができます:

wget --trust-server-names <url> 

サーバーから与えられた最後のファイル名を使用してファイルを保存します。


aria2c を使用することもできます - Content-Disposition ヘッダーでうまく動作するようです。


Linux
  1. Linuxの「検索」でファイル名のみを取得するには?

  2. Wget で保存せずにファイルを要求するにはどうすればよいですか?

  3. 完全なパスまたはファイル名で grep の結果を表示する方法

  1. Linux でこの名前のファイルを削除する方法:-]???????q

  2. ddを使用してFFでファイルをパディングする方法は?

  3. 変な名前のファイルを削除するには?

  1. 名前が「-」(ハイフン、別名ダッシュまたはマイナス)で始まるファイルを削除するにはどうすればよいですか?

  2. ファイルがWgetによってダウンロードされているかどうかを確認する方法は?

  3. .fuse_hidden* ファイルを削除するには?