lftpミラーリングスクリプト の変更点


 WebサイトをFTPで更新するとき,更新するファイルが一つか二つくらいならいいのですが,これが多くなるとちょっと大変です.更新し忘れたり,間違って古いファイルを上書きしてしまい,これまでの苦労が水の泡に…なんて経験はないでしょうか.それを防ぐためには,ミラーリングアップロードできるソフトウェアを使うのが一番です.
 
 多機能なCUIのFTPクライアント「lftp」は,ミラーリングダウンロード,アップロードの機能を備えています.lftp単体でも十分に便利なのですが,シェルスクリプトに組み込めばさらに便利です.この記事では,lftpを核にして,第1引数で指定したディレクトリをミラーリングアップロードするスクリプトをつくってみます.
 
 
 * lftpの基本 [#oa8e1cfe]
 
 * lftpをスクリプトに組み込む [#m52cf478]
 
 ** 一通りの完成 [#b00106ef]
 
 最終的に,つぎのようになります.
 
  #!/bin/sh
  
  test -z "$1" && echo "USEGE: lftpdir.sh <dirname>" && exit
  
  DIRNAME=$1
  USERID=******
  PASSWAD=******
  FTPSITE=******
  
  if [ $DIRNAME = welcome -o \
       $DIRNAME = mathInPhys -o \
       $DIRNAME = mechanics -o \
       $DIRNAME = elemag -o \
       $DIRNAME = thermo -o \
       $DIRNAME = quantum -o \
       $DIRNAME = solid -o \
       $DIRNAME = energy ]
  then
  	lftp <<- END
  		open -u $USERID,$PASSWAD $FTPSITE
  		set ftp:list-options -a
  		lcd ~/public_html/$DIRNAME
  		cd /$DIRNAME
  		mirror -Rev
  	END
  else
  	echo "No such directry."
  fi
 
 「******」の部分には,実際の環境に合わせて書き直してください.このスクリプトは,ファイルにパスワードを直接書くことになりますので,パーミッションは 700 にするなどして,人に見られないよう注意しましょう(一番いいのは,パスワードをその都度入力することです).
 
 
 
Valid XHTML 1.1! home > コンピュータ > プログラミング >
リロード   新規 編集 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Modified by 物理のかぎプロジェクト PukiWiki 1.4.5_1 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-jiPowered by PHP 5.3.29HTML convert time to 0.002 sec.