|
Counter: 320,
today: 1,
yesterday: 0
内容 †目的 †どうぶつの森で撮った写真をワンタッチでサーバにアップする。 使用イメージ †SDカードをPCにさして、gazou_up.batを起動(ダブルクリック)。 実行されること †1.SDカードからHDDへ画像の移動 †gazou_up.batを実行したディレクトリの配下に実行日時のディレクトリ(20090326_00051265等)を作成し、SDカードのJPGファイルをすべてその配下に移動する。 例) C:\Documents and Settings\日向充\My Documents\72.どうぶつの森 配下に20090326_00051265を作成し、そこに I:\DCIM\110NIN01\ 配下のJPG画像をすべて移動。 2.画像一覧htmlを作成 †各画像を縮小表示したリンク一覧、ichiran.htmを作成する。 例) http://hinata.la.coocan.jp/doubutsu/20090326_00051265/ichiran.htm 3.画像のアップ †http://hinata.la.coocan.jp/doubutsu/ 配下に実行日時のディレクトリを作成し、その配下に画像をすべてアップする。 例) http://hinata.la.coocan.jp/doubutsu/20090326_00051265/RUU_0001.JPG http://hinata.la.coocan.jp/doubutsu/20090326_00051265/RUU_0002.JPG 4.画像表示バッチの作成 †実行日時のディレクトリ配下にhyouji.batを作成。 例) C:\Documents and Settings\日向充\My Documents\72.どうぶつの森\20090326_00051265\hyouji.bat 中は for %%A in (*.JPG) do start "" "http://hinata.la.coocan.jp/doubutsu/20090326_00051265/%%A" start "" "http://hinata.la.coocan.jp/doubutsu/20090326_00051265/ichiran.htm" のような内容。 5.結果表示 †
導入方法 †1.最新版gazou_up_xxxxxx.zipのダウンロード †をダウンロードする。 2.zipファイルの展開 †任意のディレクトリにgazou_up_xxxxxx.zipを配置し、展開する。 例) C:\Documents and Settings\日向充\My Documents\72.どうぶつの森 にgazou_up_090407.zipを配置しダブルクリック。 3.展開されたファイルの確認 †gazou_up.bat
gazou_up\html.txt
make_ftptxt.pl
makebat.pl
makehtml.pl
putjpg.bat
の構成で1ディレクトリ、6ファイルが展開されることを確認する。 例)
C:\Documents and Settings\日向充\My Documents\72.どうぶつの森\gazou_up_090407\gazou_up.bat
gazou_up\html.txt
make_ftptxt.pl
makebat.pl
makehtml.pl
putjpg.bat
4.Perlのインストール †Perlをインストールしていない場合、ここ等からPerlをダウンロードし、インストールする。 5.gazou_up.batの編集 †gazou_up.batを右クリック→編集 REM =========ここから変数設定========= REM (マイクロ)SDカードのパス set SD_DIR=I:\DCIM\110NIN01 REM ベースとなるWeb上のURL set URL_BASE=http://hinata.la.coocan.jp/doubutsu REM Perl.exeの配置場所 set PERL="C:\Documents and Settings\日向充\My Documents\08.Perl\bin\Perl.exe" REM [サーバ情報]アドレス set SERVER_ADDR=ftp.la.coocan.jp REM [サーバ情報]ユーザ名 set SERVER_USER=hinata.la.coocan.jp REM [サーバ情報]パスワード set SERVER_PASS=xxxxxxx REM [サーバ情報]ベースとなるディレクトリ(URL_BASEに対応するサーバ上のディレクトリ) set SERVER_DIR=/hinata.la.coocan.jp/homepage/doubutsu REM =========ここまで変数設定========= 修正したら保存し、閉じる。 6.ツールの実行 †gazou_up.batをダブルクリックし、上記に記述している実行されることがすべて実行されたら導入成功。 ディレクトリ構成 †C:\Documents and Settings\日向充\My Documents\72.どうぶつの森\gazou_up.bat ←これをダブルクリック
\gazou_up\putjpg.bat ←gazou_up.batから呼ばれるサブモジュール。(ユーザは意識しなくてOK)
make_ftptxt.pl ←同上
makebat.pl ←同上
makehtml.pl ←同上
putjpg.txt ←ツールの実行により生成される中間ファイル(ユーザは意識しなくてOK)
ftp.log ←ツールの実行により生成されるログファイル(ユーザは意識しなくてOK)
\20090326_00051265\ ←ツールの実行により生成される画像格納ディレクトリ
hyouji.bat ←ツールの実行により生成されるWeb画像表示バッチ
tag.txt ←ツールの実行により生成されるココログ用tagテキスト
RUU_0001.JPG ←自動退避された画像たち
RUU_0002.JPG
\20090321_22513134\ ←ツールを実行するたびにこういったディレクトリが作成される。
(中身は20090321_23020440と同じ。)
\20090321_21582725\
・・・・・・・・・
・・・・・・・・・
ソースイメージ †gazou_up.bat †REM =========ここから変数設定========= REM (マイクロ)SDカードのパス set SD_DIR=I:\DCIM\110NIN01 REM ベースとなるWeb上のURL set URL_BASE=http://hinata.la.coocan.jp/doubutsu REM Perl.exeの配置場所 set PERL="C:\Documents and Settings\日向充\My Documents\08.Perl\bin\Perl.exe" REM [サーバ情報]アドレス set SERVER_ADDR=ftp.la.coocan.jp REM [サーバ情報]ユーザ名 set SERVER_USER=hinata.la.coocan.jp REM [サーバ情報]パスワード set SERVER_PASS=xxxxxxxx REM [サーバ情報]ベースとなるディレクトリ(URL_BASEに対応するサーバ上のディレクトリ) set SERVER_DIR=/hinata.la.coocan.jp/homepage/doubutsu REM =========ここまで変数設定========= REM =========ここから処理========= REM マイクロSDカードの内容を表示 dir %SD_DIR% REM 日付のディレクトリを作成 set DT=%date:/=% set DT=%DT:月 =% set DT=%DT:火 =% set DT=%DT:水 =% set DT=%DT:木 =% set DT=%DT:金 =% set DT=%DT:土 =% set DT=%DT:日 =% set DT=%DT: =% set TM=%time::=% set TM=%TM:.=% set TM=%TM: =0% set dirame=%DT%_%TM% md %dirame% REM SDカードから画像を移動 move "%SD_DIR%\*.JPG" . REM 一覧htmlの作成 for %%A in (*.JPG) do %PERL% "gazou_up/makehtml.pl" %URL_BASE% %dirame% %%A type gazou_up\html.txt>>ichiran.htm REM ftpでサーバにアップ cd gazou_up %PERL% "make_ftptxt.pl" %SERVER_ADDR% %SERVER_USER% %SERVER_PASS% %SERVER_DIR% %dirame% Call putjpg.bat cd .. REM 画像を日付ディレクトリに退避 move *.JPG %dirame% move ichiran.htm %dirame% REM 画像をWeb上で表示 cd %dirame% for %%A in (*.JPG) do start "" "%URL_BASE%/%dirame%/%%A" start "" "%URL_BASE%/%dirame%/ichiran.htm" REM 配下のJPGに対応するWebページをすべて表示するbatの作成。 %PERL% "../gazou_up/makebat.pl" %URL_BASE% %dirame% REM HDD上のディレクトリを表示 start "" "." makehtml.pl †ichiran.htmを生成するpl。(ichiran.htmについては上記を参照のこと。) #!/usr/bin/perl
$URL="${ARGV[0]}/${ARGV[1]}/${ARGV[2]}";
$filename="${ARGV[2]}";
open(FW,">>ichiran.htm");
print FW << "EOL";
<a href="$URL">
<img title="$filename" height="120" alt="$filename" src="$URL"
width="160" border="0" style="FLOAT: left; MARGIN: 0px 5px 5px 0px" /></a>
EOL
close (FW);
※ このperlをgazou_up.bat内で起動している。 for %%A in (*.JPG) do %PERL% "gazou_up/makehtml.pl" %URL_BASE% %dirame% %%A のように実行することにより、上記で記述したichiran.htmができる。(%で囲まれている各変数はgazou_up.batの冒頭で設定している値。%%Aはforの繰り返しで使用している変数。) make_ftptxt.pl †#!/usr/bin/perl
$server="${ARGV[0]}";
$user="${ARGV[1]}";
$pass="${ARGV[2]}";
$base_dir="${ARGV[3]}";
$thistime_dir="${ARGV[4]}";
open(FW,">putjpg.txt");
print FW << "EOL";
open $server
$user
$pass
cd $base_dir
mkdir $thistime_dir
cd $thistime_dir
lcd ..
binary
prom
mput *.JPG
put ichiran.htm
ls
disconnect
bye
EOL
close(FW);
※ このperlをgazou_up.bat内で起動している。 %PERL% "make_ftptxt.pl" %SERVER_ADDR% %SERVER_USER% %SERVER_PASS% %SERVER_DIR% %dirame% のように実行することにより、putjpg.txtという名前で以下の内容のファイルができる。(%で囲まれている各変数はgazou_up.batの冒頭で設定している値。) open ftp.la.coocan.jp hinata.la.coocan.jp ■この行にパスワードが記載されている cd /hinata.la.coocan.jp/homepage/doubutsu mkdir 20090326_00051265 cd 20090326_00051265 lcd .. binary prom mput *.JPG put ichiran.htm ls disconnect bye putjpg.bat †ftp -s:putjpg.txt>>ftp.log これは、、まったくバッチを分ける必要なかったかもしれないけど、モジュール分割していた方がデバッグや動作確認等らくだったので。。 ※ ftpはこのように呼べば、txtに記載された内容を実行する。 makebat.pl †各日時ディレクトリ配下にhyouji.batを作成するpl。(hyouji.batについては上記を参照のこと。) #!/usr/bin/perl
#配下のJPGに対応するWebページをすべて表示するbatの自動作成。
open(FW,">>hyouji.bat");
print FW << "EOL";
for %%A in (*.JPG) do start "" "${ARGV[0]}/${ARGV[1]}/%%A"
start "" "${ARGV[0]}/${ARGV[1]}/ichiran.htm"
EOL
close (FW);
※ このperlをgazou_up.bat内で起動している。 %PERL% "../gazou_up/makebat.pl" %URL_BASE% %dirame% のように実行することにより、上記で記述したhyouji.batができる。(%で囲まれている各変数はgazou_up.batの冒頭で設定している値。) 改版履歴 †090309(初版) †この日のメモ→メモメモ/2009-03-09 090311 †表示するWebページを1枚目だけでなくすべての画像に変更。 090312 †Bug#1の対処及びBug#2の暫定対処。 090321 †PukiWiki貼り付け用タグを表示するtag.txtを自動生成する機能を追加。 この日のメモ→メモメモ/2009-03-21 090325 †携帯画像自動アップ&tag作成ツールにあわせ、ユーザ情報を一箇所にまとめた。 090407 †ichiran.htmにどうぶつの森の広告とこのページへのリンクを追加。 この日のメモ→メモメモ/2009-04-07 バグ管理簿 †
|