Wget

在 http 下載中使用萬用字元的 wget

  • August 12, 2020

我需要使用 wget 下載文件,但是我不知道文件名到底是什麼。

https://foo/bar.1234.tar.gz

根據手冊頁,wget 允許您在處理 ftp 站點時關閉和打開 globbing,但是我有一個 http url。

使用 wget 時如何使用萬用字元?我正在使用 gnu wget。

我嘗試過的事情。

/usr/local/bin/wget -r "https://foo/bar.*.tar.gz" -P /tmp

更新

使用 -A 會導致下載伺服器上所有以 .tar.gz 結尾的文件。

/usr/local/bin/wget -r "https://foo/" -P /tmp -A "bar.*.tar.gz"

更新

從答案來看,這是最終起作用的語法。

/usr/local/bin/wget -r -l1 -np "https://foo" -P /tmp -A "bar*.tar.gz"

我認為這些開關可以滿足您的要求wget

  -A acclist --accept acclist
  -R rejlist --reject rejlist
      Specify comma-separated lists of file name suffixes or patterns to 
      accept or reject. Note that if any of the wildcard characters, *, ?,
      [ or ], appear in an element of acclist or rejlist, it will be 
      treated as a pattern, rather than a suffix.

  --accept-regex urlregex
  --reject-regex urlregex
      Specify a regular expression to accept or reject the complete URL.

例子

$ wget -r --no-parent -A 'bar.*.tar.gz' http://url/dir/

引用自:https://unix.stackexchange.com/questions/117988