掲示板お問い合わせランダムジャンプ



この広告は30日以上更新がないブログに表示されております。 新しい記事を書くことで広告を消すことができます。

過去blogナビ
blogの目次
JavaScript有効にしてないと使えないのがアレなんですが、まぁ使ってください。 powerd by 信州.FM

2006年12月19日
フック・スクリプト(動かないぞ編)
subversion では、コミットをフックして自由にスクリプトを実行させることができる。
$SVN_REPOSITORY_PATH/hooks/*.tmpl
というテンプレートファイルが用意されており、それらを元にスクリプトを作成できる。たとえば、コミット処理終了後に走らせたければ、post-commit.tmpl というファイルを元に編集すれば良い。そして、post-commit とリネームして実行権を与えれば、svn commit した後にスクリプトを走らせることができる。

で、なんか知らん間にトラブルが起きた。

続きを読む ...
 
[ 投稿者:bp at 16:56 | バージョニング | コメント(2) | トラックバック(0) ]

2006年11月10日
メール送信のプログラム
概要:
cronで定期的に実行して、メールスプーラを監視します。
このプログラムは、複数のメール送信が必要なアプリケーションを同時に動かす場合に、個々にメールを管理しなくて済むということを狙って開発しました。
一度に送信できるメール数はサーバー/ネットワークの能力によって決まっている。cron実行間隔は、それに合わせて設定すべきでしょう。

別のプログラムでメールファイル(ヘッダ付き)を生成する。
 ↓
スプールディレクトリにファイルを置く。
 ↓
メールスクリプト実行で送信する。
 ↓
送信済みディレクトリにファイルを移動する。


メールを送信するためのシェルスクリプト。
動作の確認には、postfix + emMime を使用したサーバを使用しています。sendmail を置き換えるMTA(qmailとか)なら動作すると思います。その際には、sendmailオプションを見直すなど若干の修正が必要かもしれません。

続きを読む ...
 
[ 投稿者:bp at 00:06 | シェルテク | コメント(0) ]

2006年10月16日
svn リポジトリ管理
自動的にログを削除するように設定していない場合は、定期的に削除する作業をおこなわないとディスク一杯になりがち。

% svnadmin list-unused-dblogs /home/cvsmgr/svnrep | xargs rm


[ 投稿者:bp at 00:34 | バージョニング | コメント(0) | トラックバック(0) ]

2006年06月01日
whoisコマンド
ドメインの更新日を調べるために、shで自動化する。

それっぽい部分を拾ってきて表示する。
perl -MIO::Socket -e 'my $w = IO::Socket::INET->new(PeerAddr => "whois.jp", PeerPort => 43, Proto => "tcp") or die $!; printf $w "%s\n", shift; print <$w>;' gihyo.co.jp/e | grep -i -E '(state|expire)' | grep -i -E -o '([0-9]{4}/[0-9]{2}/[0-9]{2})'


参考:
シェルスクリプト(Bash)...
Web+DB PRESS vol.23 定時で帰る Perl Hacks

続きを読む ...
 
[ 投稿者:bp at 17:47 | シェルテク | コメント(0) | トラックバック(0) ]

2006年03月01日
diffとpatch
patchファイルは、diffコマンドを使ってさくっとつくれますよと。
diff/patch Tips

%diff [-C 3以上の数字] -c FromFile ToFile

という感じ。
[ 投稿者:bp at 18:05 | シェルテク | コメント(0) | トラックバック(0) ]

2006年02月23日
tortoiseSVN でフォルダを削除するとき
1. tortoiseコマンドで「削除」を選ぶ。
2. 「更新」を選ぶ。
3. 「コミット」をする。

で、ようやく削除できる。
順番どおりにやらないと、えらく面倒な目にあう。
[ 投稿者:bp at 18:40 | バージョニング | コメント(0) | トラックバック(0) ]

2006年01月06日
Linuxでの自動起動設定とか
chkconfigというコマンドを使うと良いでしょう。FreeBSDでは、/usr/etc/rc.d, /usr/local/etc/rc.d に起動スクリプトを置くと勝手に呼んでくれるのですが、Linux系のほとんどは /etc/rc.d/init.d にある起動スクリプトをヘモヘモとやるのです。

6.3 サービスの実行
google 検索

% chkconfig --list サービス一覧
% chkconfig --add サービス名 /etc/rc.d/init.d に置いてあるスクリプトファイル名
% chkconfig --delete サービス名
% chkconfig --level 0|1|2|3|4|5|6 サービス名 on|of
[ 投稿者:bp at 18:27 | インストール・設定 | コメント(0) | トラックバック(0) ]

2005年07月23日
サイト監視cron登録ツール
サイト更新の監視プログラムは、cronに登録して使用することを前提に作られているわけですが、例えば事務屋さんに
「シェルにログインして、crontabコマンド実行して下さい。」
とは言えないというわけで、Webでサイト監視のスケジューリングが出来るツールを作成する。

概要:(なるたけくだらないことをやるというコンセプト)
  • スケジュールに必要な情報はXML::RSSで記録。
  • XML::RSS風のファイルのI/O生成。
  • crontab用のファイルを生成。
  • crontabファイルを cron に登録。

    ファイル説明:
  • CronSchedule.php : メインプログラム。
  • Schedule.class.php : XML::RSS::XML_Scheduleクラスのコントローラ(?)。DOM関数を使用した出力メソッドを持つ。
  • XML_Schedule.class.php : XML::RSSを改変したRSS読込みクラス。
  • Crontab.class.php : cron に登録するための処理をするクラス。
  • schedule.rdf : スケジュール情報を保存しておくRSS風ファイル。webから読み書き出来るようにしておく。
  • schedule_cron.tab : cronコマンドに渡すためのファイル。webから読み書き出来るようにしておく。
  • edit_schedule.html : 表示用のテンプレートファイル。例によって htmltemplate を使用している。

    依存するライブラリ:
  • htmltemplate : PHP開発日誌
  • PEAR::XML::RSS : ドキュメント
  • DOM XML関数 : phpマニュアル
  • [ 投稿者:bp at 12:02 | php | コメント(0) | トラックバック(0) ]

    2005年07月22日
    ターミナルへの出力を整える
    一行が長過ぎてちょっと見難いなというときに便利なコマンド。
    col

    ex)
    > man なんとか | col -bx

    [ 投稿者:bp at 22:33 | シェルテク | コメント(0) | トラックバック(0) ]

    2005年07月13日
    LANDISK裏技
    このLANDISKはすでに有志の方々が、便利なツールやノウハウを公開されているのです
    [ 投稿者:bp at 01:01 | k | コメント(0) | トラックバック(0) ]