もう困らない!!大量のファイルをダウンロードする方法

download_img

EC-CUBEなど、大量にファイルやフォルダがあるデータをサーバーからFTPクライアントソフトを使用してダウンロードする際に、途中で止まってしまった経験があるのは私だけでしょうか?

ちなみに、この時使用したソフトはFFFTPです。
(WinSCPやFilezilla、SmartFTP等の他のFTPクライアントソフトを使えばダウンロードできたかもしれません…)

FFFTPでは設定を変更すると、若干速度は落ちるものの止まることなくダウンロードが可能ですが、これを一つのzipファイルにしてしまえば、とても簡単にダウンロードできます。

■zipファイルにする方法

<?php
// ここの値がzipファイル・フォルダの名前になります
// 実行が終わったらfilename.zipができます
$name = "filename";
// zipにする対象ファイル・フォルダの名前
$target = "images";
$command = "zip -r ".$name.".zip " . $target ;
// 実行します
exec($command);
print<<<EOD
実行ファイルへのフルパス:
EOD;
echo __FILE__ ;
echo"
";
echo"$command";
print<<<EOD
完了
EOD;
?>

cdコマンド(ディレクトリ移動)を使用したほうが良いのですが、上手く動作しなかったのでこんな感じになりました。

PHPを保存して、ダウンロードしたいフォルダと同じ階層に置いて実行するだけです。
WordPress等のファイルやフォルダが多い場合は、一つ上の階層に置きましょう。

例)http://○○.jp/first/second/index.html のsecondフォルダをzipに圧縮したい場合
FTPサーバの /home/〇〇/www/first/ ←ここに置きます

Poderosaというターミナルエミュレータを使用する方がベターですので、こちらも軽く使い方をご紹介します。

[1]ファイル>新規Telnet/SSH接続

[2]ホスト・アカウント・パスフレーズを入力します。
(わからない場合は、サーバ管理者にお問合せください。)

接続ができたら、コマンドを入力します。

****コマンド一覧******************
cd : ディレクトリ移動
ls : ファイルやディレクトリの情報を一覧表示します。
pwd : カレント・ディレクトリを絶対パスで表示します。今いるディレクトリが分かります。
zip : ファイルを圧縮します。
unzip : ファイルを解凍します。
********************************

基本的に使うコマンドは、このくらいです。

cd /home/〇〇/www/first
zip [zipの名前].zip [対象ファイルの名前]

こんな感じで、サクッとできます!!

逆に大量のファイルをアップロードする時は、zipでサーバにアップロードしてから、そのファイルを解凍するコマンドを入力すれば簡単にアップロード完了です。

おわりに…

この方法を使えば、大量の画像をアップロードする時も短時間でパパっとできてとても便利ですね。
みなさんもぜひ試してみて下さい!


 RSSリーダーで購読する

 ,,

▼関連記事