2009年12月6日日曜日

Mozilla Thunderbird 3.0 Release Candidate 2

Mozilla Thunderbird 3.0 Release Candidate 2

RC2 がリリースされました。RC1でも特に問題無く使えていますから、どちらかと言えばアドオンの対応が進んで欲しいです。

2009年11月28日土曜日

Mozilla Thunderbird 3.0 Release Candidate 1

やっとreleaseでしょうか。ここまで長かったです。とりあえず検索性能が向上してればいいですね。あと、操作レスポンスも向上していれば。

Mozilla Thunderbird 3.0 Release Candidate 1

あたりまえですが、アドオンは対応してないものがほとんどです。

逆に対応いしていたのは、以下のアドオンでした。

  • Launchy 4.2.1
  • Quote Colors 0.3
  • Remove Duplicate Message (Alternate) 0.3.2
  • Signature Switch 1.6.4
  • United Sates English Dictionary 4.0.0
  • URL Link 2.03.3
まだまだですね。Auto Address Cleaner、Minimize To Tray あたりは対応して欲しいですね。

以下の設定は移行されていませんね。
http://ysweb.blogspot.com/2008/02/thunderbird-no018.html


移行されていました。

---

Minimize To Tray は、Minimize To Tray revived 0.5 がリリースされていて、3.0RC1に対応していました。

2009年9月22日火曜日

find コマンドで該当するファイルを削除する

find コマンドで該当するファイルを削除する方法です。別に削除でなくてもいいんですけど、使いたい目的は削除が多いのかなと思います。他にもパーミッション(permission)の変更にも使えたりします。

使い方の例としては以下の通りです。

find . -name *.sh | xargs ls -l
find . -name *.sh | xargs rm -f
*.sh というファイルを検索し、それを rm コマンドで削除するというコマンドです。(実行するととんでもないことになるようなものなので、試行には十分注意して下さい。)まずは、ls コマンドで対象ファイルを表示してみて、rm コマンドで削除するほうがいいでしょう。

以下の通り、同様のことができます。
  1. 実行権のあるファイルの実行権を落とす
    find . -perm -ugo=x -type f | xargs ls -l
    find . -perm -ugo=x -type f | xargs chmod ugo-x
    permission が +g+x だけだとディレクトリも対象となってしまい、意図と違うので、-type f を付加します。
  2. group にあるパーミッションを other にも付加する
    find . -perm -g=r -type f | xargs ls -l
    find . -perm -g=r -type f | xargs chmod o+r
色々応用できると思います。

2009年6月5日金曜日

CygwinでX11を使用する

Cygwin で X11 を使用する方法ですが、Cygwin Bash Shell を起動して、startx コマンドを実行すると xterm が起動します。xterm を終了すると x 終了してしまうので要注意です。タスクトレイに X というアイコンが現われていますが、これが X が起動していることを示しています。

xterm を起動したままで、Cygwin-X メニューのプログラムを起動すると、それぞれのプログラムが使えます。emacs や xedit などもそれなりに動きます。

また、startxwin_wmaker.sh を実行すると Window Maker で起動します。

2009年5月3日日曜日

Windows Update のテンポラリファイルを削除

Windows Update をするとテンポラリファイル(いわゆるゴミ)が残ります。最近は HDD の容量も増えて、気にするほどではないのですが、削除することもできます。できれば、テンポラリファイルのクリーンアップ機能をつけてほしいです。


テンポラリファイルの削除は、以下のディレクトリ配下を削除するだけです。
C:\WINDOWS\SoftwareDistribution\Download

2009年4月23日木曜日

awk No.005(変数で条件指定)

awk は、awk の中で変数を持っていますので、シェル変数の持ち込み方(使い方)に工夫が必要です。-v オプションで -v VAR=${VAR} とする方法とは別に、条件指定(/ で括った場合)でもひと癖あります。

$ VAR1="abc"
$ awk '/$VAR1/ {print}' a.dat
上記のようにすると、$VAR1 という文字列を検索して、変数 VAR1 の内容"abc"で検索をしてくれません。そこで、以下のように記述することで、変数 VAR1 の内容"abc"で検索してくれます。
$ VAR1="abc"
$ awk '/'$VAR1'/ {print}' a.dat
シングルクォートで囲ってあげることで、シェル変数として認識してくれます。

2009年4月7日火曜日

sed でコマンド実行結果を使う

sed でコマンド実行結果を指定する方法です。

sed s/abc/def/g a.txt といった指定をしますが、abc や def にコマンド実行結果を指定する場合、以下のようにします。

sed s/`hostname`/`hostname -f`/g a.txt
これで、hostname コマンドの実行結果(例えば host01)を hostname -f の実行結果(例えば host01.hogehoge.local)に変換してくれます。

`command`という文字列として扱いたい(コマンドとして実行しない)場合は、s から g を、シングルクォート( ' )で囲み、コマンドのバッククォート( ` )の前にバックスラッシュ( \ )を挿入します。
sed 's/abc/\`command\`/g' a.txt

2009年3月29日日曜日

シェルスクリプトの本

シェルスクリプトに関する書籍は沢山出ています。情報としては当たり前のものから、「オォッ!」と思える Tips も載っていたりします。正直、完璧なリファレンスはないですので、何冊か揃えておくのが無難です。まあ、2冊か 3冊くらいでしょうか。

tr、sed、awk 等の使い方は詳しくは載っていないものが多いです。サンプルスクリプトが掲載されていて、その例通りに使うということが多いです。

それよりも特殊変数の使い方や sh コマンドと . コマンドの違い等、基本的な解説がされているものがいいと思います。

お勧めはこれです。
入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界
入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界

2009年3月28日土曜日

awk No.004(条件指定)

awk の条件指定はいろいろあります。

まず、空行を除く場合は、以下のように NF > 0 を指定します。余計なデータを除いて処理する場合の基本です。ここで使っている NF は読み込んだレコードのフィールド数(データ数)を表わしています。NF が 0 よりも大きい、すなわち 1 個以上の場合は処理をするという指定になります。(空行はデータがないので処理しないということになります。)

awk 'NF > 0 {print $1}' a.dat
空行を除く場合は、以下のようにもできます。どちらかといえばこちらの方が本当の意味で空行を判定しています。^$ は正規表現で先頭と行末で、先頭と行末のみということは空行で、それを ! で否定していますので、空行ではない行という条件になります。データが無いという条件より厳密です。
awk '!/^$/ {print $1}' a.dat
何番目のレコードを処理するというように、レコードの順番を指定して処理する場合は、以下のように NR を使います。例えばデータファイルに行タイトルがある場合は、1行目を読み飛ばす等の処理ができます。
awk 'NR > 1 {print $1}' a.dat
基本的な使い方をもう一つ。読み込んだデータの内容によって処理をするかどうかを判定します。1番目のフィールドのデータが 100 より大きい場合に処理をするといった使い方は以下の通りです。
awk '$1 > 100 {print $1}' a.dat

2009年3月24日火曜日

awk No.003(区切り文字、デリミタ、フィールドセパレータを変更)

awk 標準の入力データのデリミタはスペースです。デリミタを変更したいときは、変数 FS を使います。デリミタと書きましたが、FS という変数からわかるようにフィールドセパレータというのが区切り文字の正式名称(?)のようです。

使い方は以下の通りです。

$ cat a.dat
a:b:c
d:e:f
g:h:i

$ awk -v FS=":" '{print $1}' a.dat
a
d
g

2009年3月18日水曜日

awk No.002(データを積算、演算)

awk の便利なところは値の積算などが手軽にできるところです。例えば、ある列の値を加算して変数に入れたり、複数の列を演算した結果を表示したりできます。

# cat a.txt
a 1 2
b 3 4
c 5 6
d 7 8

# awk '{SUM += $2;print $1,$2,SUM}' a.txt
a 1 1
b 3 4
c 5 9
d 7 16
# awk '{VAR = $2 + $3;print $1,$2,$3,VAR}' a.txt
a 1 2 3
b 3 4 7
c 5 6 11
d 7 8 15

2009年3月15日日曜日

awk No.001(基本的な使い方と変数の使い方)

awk は便利です。今更ですが。

sed をもっと高機能にしたものとも言えますが、実際はデータの置き換えというよりも、データの抽出、整形に特化しているコマンドだと思います。

ファイルを順に読んでいき処理をしてくれるわけですが、基本的な使い方は以下の通り。

awk '条件{処理}' filename
条件には、処理対象とする行の条件を指定します。処理は文字通り、処理です。print $1 等と指定すれば処理対象の1列目のデータを表示します。

スクリプト内で、$1 等を変数として使いたい場合は、以下のようにします。
[OK]
# cat a.txt
abc 0 1 2
def 0 1 2
ghi 0 1 2
jkl 0 1 2

NUM="1"
awk -v NUM=${NUM} '{print $NUM}' a.txt

実行結果
abc
def
ghi
jkl
-v オプションで NUM という awk 内の変数に、シェルスクリプト内の変数を代入して、awk 内の変数 NUM として使います。

以下のような指定では、思った結果は得られません。NUM は"$1"という文字列が代入された awk 内の変数として扱われ、$1 が結果として表示されてしまいます。
[NG]
# cat a.txt
abc 0 1 2
def 0 1 2
ghi 0 1 2
jkl 0 1 2

NUM="$1"
awk -v NUM=${NUM} '{print NUM}' a.txt

実行結果
$1
$1
$1
$1

2009年3月5日木曜日

df で表示させるファイルシステムを限定する

df コマンドでファイルシステム情報を表示すると、NFS 等のネットワークファイルシステムを多くマウントしていたり、ローカルファイルシステムが多くあったりすると、だらだらと表示されて見づらくなってしまいます。

そこで、-x (--exclude=) オプションで、表示させないファイルシステムを指定することができます。また、複数のファイルシステムタイプを指定したい場合は、-x (--exclude=) オプションを複数回指定します。

df -x nfs -x ext2

2009年2月25日水曜日

Wireshark のウインドウ位置を保存する

Wireshark のウインドウ位置を保存する方法です。

標準は保存(記憶)しない設定になっていますので、以下の設定でウインドウ位置を記憶できます。

  1. [Wireshark] を起動します。
  2. [Edit] - [Preferences...] を選択します。
  3. 左ペインで[User Interface] を選択し、右側で‘Save window position:’ をチェックして、[Apply] をクリックします。

2009年2月9日月曜日

AOSSとWPS

BUFFALO の規格 AOSS と WiFi の WPS と 2 つの規格があるのを、恥ずかしながら BUFFALO WHR-G300N を購入してから知りました。未だに WEP しか対応していない 無線 LAN AP を使っていましたから・・・浦島太郎状態です。

まず、情報収集です。

ワイヤレスホームネットワークの未来を広げるAOSS | BUFFALO バッファロー
AirStation One-Touch Secure System - Wikipedia

AOSS は AirStation で使えるセキュリティシステムって名前になっています。最近は子機は BUFFALO 以外のアダプタもサポートしているようです。

BUFFALO のウェブサイトでは、「簡単に設定できる」ということが全面に打ち出されています。セットアップしましたが、確かにそうですね。非常に簡単です。やり方がわかっていれば、まさしくワンタッチ(実際はツータッチ・・・)です。

セキュリティ面ではどうなのか・・・と思います。手順からすれば、アクセスポイントの AOSS 起動が出来てしまえば何でもできるということが最大の問題点だと思います。

通常、屋内設置でしょうから、物理的にスイッチを押されることはないでしょうし、物理的にスイッチを押されるようであれば無線 LAN 以外のセキュリティ問題だと思います。(オレオレ詐欺的にスイッチを押させるというのはありかもしれませんが・・・)

できることなら、AOSS 認証できる子機を MAC アドレスでフィルタリングしたいところですが・・・AOSS とMAC アドレスによる制限は併用できないようです。ビーコンが垂れ流しなのは致し方ないですがいただけないですね。

WPS は 原則 AOSS と同等機能のようで、特に変わりはないようです。ただ、BUFFALO のクライアントマネージャのヘルプを見ると、2台目以降を認証中に、1台目の接続が AOSS では中断されるようですが、WPS では中断されないようです。

何れにしても、安全・簡単 ということのようですが、設定が簡便でボタンを押すだけという点や MAC アドレス制限がされない点など、いくつかのセキュリティ面での疑問も生まれます。(大丈夫なんでしょうけどね・・・)

BUFFALO Draft2.0 11n/g/b 無線ルータ WHR-G300N
BUFFALO Draft2.0 11n/g/b 無線ルータ WHR-G300N

※現在 Amazon で プライム がお試し中です。1か月後に自分でお試し解除しなければなりませんが、急ぎ注文オプションが 1ヶ月間無料で使えるということで使って損はないでしょう。上の商品も注文から数時間で届きました。(正直スゴイ)

し・か・し・・・です。やっぱりセキュリティが気になります。

AOSS で認証している時に不正端末も同時に認証していたら?

AOSS プロセスが安全だとしても他の暗号化レベルで認証できてしまうのでは?

といろいろ気になるのですが、それよりも便利というのがポイントです。規格も WPS での統一に向かうでしょうし、色んな機器が AOSS や WPS で接続できるようになれば、その使いやすさも増すでしょう。WindowsXP の標準機能にないのがつらいですね。まあ、BUFFALO のクライアントマネージャは他メーカーの無線子機(アダプタ)でも使えるみたいですけどね。

2009年1月29日木曜日

PCで作成したCDをUNIXで読む

Windows で作成した CD-ROM(CD-R等)を UNIX で読むとロングファイルネームのファイルが全て 8.3形式に変わってしまっていたり、大文字ばかりになっていたり、小文字ばかりになっていたりします。

Windows で作成した CD-ROM(CD-R等) は、通常 Joliet といわれる形式になっています。Joliet は CD-ROM(CD-R等) の規格である ISO9660 を拡張して、8.3形式以外のファイル名を使えるようにしたものです。

しかし、UNIX では Joliet が認識できず、8.3形式のまま表示されてしまうことがあります。Linux は Windows と親和性が高い傾向にあるので、問題なく読んでくれるものが多いのですが、Solaris などは Joliet を認識できません。

Solaris などの UNIX では RockRidge という Joliet とは異なった規格が使われいることが原因です。

なので、Windows で作成した CD-ROM(CD-R等) を UNIX でも正しく読みたい場合は、RockRidge 形式でライティングすればいいのです。が、簡単にはできません。方法としては、以下の方法が考えられます。

  1. Windows で RockRidge 形式でライティングする。
  2. UNIX(Linux含む)で RockRidge 形式の ISO イメージを作成し Windows でライティングする。
ただ、1. は RockRidge 形式でライティングできるライティングソフトが見当たりません。(あるのかもしれませんが・・・)2. も、UNIX 環境へファイルを転送して ISO イメージを作成できるくらいなら、あえて CD-ROM(CD-R等) にする必要はありません。

主な用途としては、Windows で取得したファイルを UNIX にもっていきたいけれど、ネットワーク環境などが整っていないので CD-ROM に焼いてもっていくということなので、できるだけ Windows 環境だけで CD-ROM を作成しないといけません。そこで、以下の方法であれば、Windows 環境だけで UNIX 向けの RockRidge 形式の CD-ROM が作成できます。(反則気味ですが・・・)
  1. Cygwin で RockRidge 形式の ISO イメージを作成する。
    # mkisofs -R -J -T -o rockridge.iso ./files
    -R RockRidge 形式で ISO イメージを作成
    -J Joliet 形式で ISO イメージを作成(-R -J は同時に指定できます。)
    -T TRANS.TBL を作成(RockRidge 形式が使用できないシステム向けのロングファイルネーム情報)
    -o filename ISO イメージファイル名
    ./files ファイルが格納されているディレクトリ
    【-R -J -T を全て指定しておけば、ほぼ全てのシステムでロングファイルネームが扱えるということになります。】
    Manpage of MKISOFS
  2. RockRidge 形式 ISO イメージをライティングする。
すいません。Cygwin 使うだけでした・・・Cygwin なら Windows 上で処理できますから・・・