ユーティリティ
私たちは普段 cp, ls, find, grep などを「コマンド」と言っているが、FreeBSD man ページや古い文献では「ユーティリティ」と呼んでいるようだ。
私たちも「ユーティリティ」と呼んだ方が通っぽくて (・∀・)カコイイ! のではなかろうか。
しかし sh やデーモンなどもユーティリティと呼んでいいものだろうか。
ここを見ると、コマンドのカテゴリとして
sh, utilities, Document formatting, Graphics, Communications などがあることになっている。
http://en.wikipedia.org/wiki/Unix#Common_Unix_commands
FreeBSD man 1 sh には
sh ユーティリティはシステムの標準コマンドインタプリタです。
と書いてある。
しかし Unix 1st edition のマニュアルを見ると思いっきり command と書いてあるなあ。
http://www.cs.bell-labs.com/who/dmr/1stEdman.html
grep しても utility は見つからない。
結局使い分けは決まってないの?
[追記:2007-01-13]
POSIX によれば、utility とはシェルから呼び出せるプログラムで、組み込みコマンドは除く。
command とはコマンド行の1行でタスクに対応するもの。らしい。
http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap03.html#tag_03_392
一風変わった diff
MarkDiff
Word 文書を比較。かしこいらしい。1本 66,000円。
http://www.userssoft.co.jp/markdiffj/index/default.htm
wdiff
単語単位の diff。
文字単位で diff をとる。
> 現在、テキストファイルの差分をとるツールを探しています。
> 行単位での差分ならば UNIX の diff コマンド
> (Windows 版は http://www.vector.co.jp/soft/winnt/prog/se015009.html
> あたりから引っ張ってくればいいでしょう)で取れますが、
> 文字単位で差分をとりたいのです。たとえば、> [file1.txt]
> 位での差分ならば…以下略
> [file2.txt]
> 単位での差分ならば…以下略
$ cat tmp1
現
在
、
テ
キ
ス
ト
の
差
分
を
と
る
ツ
ー
ル
を
探
し
て
い
ま
す
。
行
単
位
で
の
差
分
な
ら
ば
$ cat tmp2
テ
キ
ス
ト
フ
ァ
イ
ル
の
差
分
を
と
る
ツ
ー
ル
を
探
し
て
い
ま
す
。
行
単
位
で
の
差
分
な
ら
ば
$ diff -u tmp1 tmp2
--- tmp1 Fri Feb 9 23:33:10 2001
+++ tmp2 Fri Feb 9 23:32:53 2001
@@ -1,10 +1,11 @@
-現
-在
-、
テ
キ
ス
ト
+フ
+ァ
+イ
+ル
の
差
分うーん、上出来スギ。:-)