memo.xight.org

日々のメモ

chalow の実行時間

ChangeLogのサイズ

Line 30003 (行)
Entry 2518 (エントリ)
File size 998333 (byte)
- 自宅サーバ (PentiumMMX 200MHz 64MB)

$ time /home/yoshiki/bin/chalow/chalow /home/yoshiki/memo/ChangeLog -o
117.76s user 1.24s system 99% cpu 2:00.14 total

- apollo (Pentium4 2.0GHz? 1024MB?)

$ time /home/yoshiki/bin/chalow/chalow /home/yoshiki/memo/ChangeLog
3.48s user 0.22s system 92% cpu 4.018 total

30000行達成

記録

Line 30003 (行)
Entry 2518 (エントリ)
File size 998333 (byte)

備考

  ChangeLog開始日は[2002-11-28-1]
  ChangeLog開始1周年は[2003-11-28-1]
  10000行達成は[2003-10-04-1]
  20000行達成は[2004-05-06-23]

コマンドラインでImage Magickを使用する

サムネイルを作る (サイズ指定)

$ convert -sample 160x120 input.jpg output.jpg


サムネイルを作る (倍率指定)

$ convert -sample 25%x25% input.jpg output.jpg


カレントディレクトリ内のJPEGファイルをサムネイルにする

for img in `ls *.jpg`
do
  convert -sample 25%x25% $img thumb-$img
done


画像ファイルの情報を得る

identify -verbose example.png

画像を回転させる

$ convert -rotate 90 input.jpg output.jpg

  -rotateオプションの引数は右回転の角度を指定する.
  左回転にするなら負の値にする.

イメージフォーマットの変換

$ convert input.jpg output.png


Reference

  ImageMagick.org
  http://www.imagemagick.org/
  IBM - developerWorks - Linux - コマンドラインからのグラフィックス操作
  http://www-6.ibm.com/jp/developerworks/linux/031031/j_l-graf.html

Image::Magickの使用法

サムネイルを生成

  Transformは,同じ比率で画像を縮小拡大する
#!/usr/bin/perl

use Image::Magick;

# 新しい幅だけ指定する
$newwidth = 120;

$i = Image::Magick->new;
$i->Read('input.gif');

# Transformは同じ比率で画像を縮小拡大する
$i = $i->Transform(geometry=>$newwidth);

print "Content-type: image/gif\n\n";
binmode(STDOUT);
$i->Write("gif:-");

exit;


幅と高さを指定して,GIFファイルをJPEGに変換する

  Scaleは,縦横のピクセルを与え縮小拡大する
#!/usr/bin/perl

use Image::Magick;

$newwidth  = 160;
$newheight = 160;

$i = Image::Magick->new;
$i->Read('input.gif');

# Scaleは縦横のピクセルを与え縮小拡大する
$i->Scale(geometry=>geometry,width=>$newwidth,height=>$newheight);

print "Content-type: image/gif\n\n";
binmode(STDOUT);

# JPEGで出力
$i->Write("jpeg:-");
exit;


枠の追加

width 枠の幅
height 枠の高さ
inner 内枠の幅
outer 外枠の幅
#!/usr/bin/perl

use Image::Magick;

$infile = "input.jpg";

$i = Image::Magick->new;
$i->Read($infile);

# 枠の幅がwidth,枠の高さがheight,内枠の幅がinner,外枠の幅がouter
$i->Frame(geometry=>geometry,width=>6,height=>6,inner=>2,outer=>2,color=>'#50FF50');
print "Content-type: image/gif\n\n";
binmode(STDOUT);
$i->Write("jpeg:-");
exit;


画像の回転

degrees 回転の角度 (-360〜360)
crop 1を指定すると元の画像の大きさを変えない
sharpen 1を指定すると,シャープフィルタを付加する
#!/usr/bin/perl

use Image::Magick;

$infile = "input.jpg";

$i = Image::Magick->new;
$i->Read($infile);
$i->Set(bordercolor=>'#FFFFFF');
$i->Rotate(degrees=>-30,crop=>0,sharpen=>1);
$i->Trim();
print "Content-type: image/gif\n\n";
binmode(STDOUT);
$i->Write("jpeg:-");
exit;


Reference

  ImageMagick.org
  http://www.imagemagick.org/
  ImageMagic(PerlMagic)
  http://www.tryhp.net/homeserver16.htm

MiGrep

Summary

  エクスプローラ拡張Grep
  MiGrep

特徴

  1.エクスプローラでGrepしたいフォルダやファイルを選択してGrepできる
  2. 正規表現をサポート
  3. 文字コードの自動判別
  4. Word,Excelファイル内の検索可能
  5. 日本語を考慮した単語単位での検索に対応
  6. Grepの結果を外部エディタに出力可能
  7. 見つかったファイルの検索語置換が可能
  8. 他のアプリケーションからの実行が可能
  9. テキスト変換プログラムを外部フィルタとして登録可能.(PDF形式や一太郎形式も検索可能に)

Reference

  M & I の FreeSoft - MiGrep
  http://homepage3.nifty.com/m-and-i/freesoft/migrep/migrep.htm

via

  inside out - 2004-09-10
  http://www.hirax.net/diaryweb/2004/09/10.html#200409101

モジュールの一括バージョンアップ & インストール

古くなっているモジュールの一覧

$ perl -MCPAN -e 'CPAN::Shell->r'


古くなっているモジュールを一括してバージョンアップ

# perl -MCPAN -e 'CPAN::Shell->install(CPAN::Shell->r)'


他の環境にインストールされているモジュールを一括してインストール

  例えばperl本体をバージョンアップしたときはこんな感じで。

# perl-5.6 -MCPAN -e autobundle
# perl-5.8 -MCPAN -e 'install Bundle::Snapshot_2004_06_16_00'


Reference

  はてなダイアリー - (ひ)のメモ - 2004-06-18
  http://d.hatena.ne.jp/hirose31/20040618#1087530672

via

  cl.pocari.org - 2004-09-06
  http://cl.pocari.org/2004-09.php#2004-09-06-13