wgetコマンドでミラーリングの保存先を指定するには

概要

webサイト全体をクロールして保存するには、wgetコマンドと--mirrorオプションを使います。 保存先を指定するには、--diretory-prefixオプションを使います。

カレントディレクトリに保存する

--mirrorオプションを使うと、カレントディレクトリに、webサイトのドメイン名のディレクトリが作られます。その下にツリー構造で保存されます。

例えば、カレントディレクトリは ~/tmp/、カレントディレクトリに保存したい場合、次のように使います。

カレントディレクト下にwww.ninton.co.jpディレクトリが作られて、その下にツリー構造で保存されます。

$ mkdir ~/tmp
$ cd ~/tmp
$ wget --mirror https://www.ninton.co.jp

$ ls
www.ninton.co.jp

$ tree www.ninton.co.jp
www.ninton.co.jp/
├── archives
│   └── category
├── comments
│   └── feed
Code language: PHP (php)

ターミナルでwgetコマンドを直接起動するときは、ミラーリング結果をカレントディレクトリに保存することが多いです。次の --directory-prefixオプションを使うことは少なく、ついオプション名を忘れてしまいます。

保存先を指定する

ターミナルでwgetコマンドを直接起動するのではなく、シェルスクリプトやnodejs、その他のスクリプト内でwgetを使うときは、カレントディレクトリではない場所にミラーリングを保存したいことがあります。

ミラーリングの保存先を指定するには、--diretory-prefixオプションを使います。

例えば、カレントディレクトリは ~/tmp/、保存先は ~/tmp2/ としたい場合、次のように使います。

$ mkdir ~/tmp
$ mkdir ~/tmp2
$ cd ~/tmp
$ pwd
/home/taro/tmp

$ wget --mirror --directory-prefix=/home/taro/tmp2/ https://www.ninton.co.jp

$ ls
(カレントディレクトリに www.ninton.co.jp は作られていません)

$ ls ~/tmp2
www.ninton.co.jpCode language: PHP (php)
タイトルとURLをコピーしました