wgetコマンドでワイルドカードを使ってダウンロードするファイルを指定する方法

目次

スポンサードリンク

wgetコマンドの基本構文

wgetコマンドはインターネットから、htmlファイルや画像などのコンテンツをダウンロードする際に使用するコマンドです。 基本構文は以下です。コマンドの後にオプション、ダウンロード対象のURLと続けます。

wget [オプション] [URL]

ワイルドカードを使ってダウンロードするファイルを指定する方法

wgetにはダウンロードするコンテンツの拡張子を指定する -A オプション(–accept)があります。 -A jpg,png のように、ダウンロードしたいファイルの拡張子をカンマ区切りで指定することができます。

このオプションでは、ワイルドカードを指定することができ、ワイルドカード文字 *、?、[ または ] があると、拡張子ではなくファイル名のパターンを指定したことになります。

以下のサンプルは、当ブログのトップページから再帰的にコンテンツを取得し、-A オプションで ファイル名に linux という文字を含むコンテンツのみを取得しています。

[root@hostname tmp]# wget -r -A *linux* https://uchy.me/blog/ 

llコマンドで取得できたコンテンツを見てみると、ファイル名にlinuxが含まれているサムネイル画像のみが取得できていることがわかります。この例では階層ごとにディレクトリが作られていますが、-nd(–no-directories)オプションを指定するとディレクトリを作らずにすべてのファイルがカレントディレクトリに保存されます。

[root@hostname tmp]# ll uchy.me/*/*/*/
uchy.me/blog/images/thumb/:
total 120
-rw-r--r-- 1 root root 20876 Apr 23 23:24 thumb-linux-apache.svg
-rw-r--r-- 1 root root 23290 Apr 15 17:53 thumb-linux-command.svg
-rw-r--r-- 1 root root 15435 Nov 28  2021 thumb-linux-imagemagick.svg
-rw-r--r-- 1 root root  5847 Mar  9 12:30 thumb-linux-ls.svg
-rw-r--r-- 1 root root 11988 Mar 19 18:38 thumb-linux-php-gd.svg
-rw-r--r-- 1 root root 21420 Apr 15 17:55 thumb-linux-shell.svg
-rw-r--r-- 1 root root  9119 Nov 28  2021 thumb-linux-watch.svg

ワイルドカードを使ってダウンロードしないファイルを指定する方法

-A とは逆に、-R オプション(–reject)を指定すると、ダウンロードしないコンテンツを指定することができます。 -A と同様に、通常は拡張子を指定しますが、ワイルドカード文字列が含まれる場合はパターンマッチングとして動作します。

[root@hostname tmp]# wget -r -R *linux* https://uchy.me/blog/ 



Linuxコマンドについて学べるおすすめ書籍
Linuxコマンドの知識は、プログラマにとって長く役立つ知識です。 私はこちらの書籍で一通り知識を抑えました。基本から丁寧に解説されています。

Linux教科書 図解でパッとわかる LPIC/LinuC
はじめてLPICを受ける方向け、手を動かしながらLinuxについて学びたい方におすすめ。30日間の無料体験もできる『Kindle Unlimited』でも読むことができます。

Linuxコマンドについて徹底的に学べるUdemy講座
もう絶対に忘れない Linux コマンド【Linux 100本ノック+名前の由来+丁寧な解説で、長期記憶に焼き付けろ!】 icon