07/04/09 15:26:52
386です。
>>388
>しかも、そもそもの Unix の仕様とか考察するのに Linux 持ち出してなんの参考になるんだ?
UNIX ではなくて、shell の仕様ね。Linux を持ち出したのではなくて、"bash" を持ち出したんだ。
理由は、bourne shell よりも、bash の方がはるかに POSIX 準拠にしようと努力がなされているから。(つうか、bourne shellはまだメインテナンスしてた?という感じ。)
ksh の方がまだ、POSIX に近い(というか、歴史的には 最初のksh とかそれにつづくkshDD (D は数字いれて)がIEEE の shell and
utilities のベースになったというのが近い。ただし、文法はかなり既存のものとは違ったものになってけど。yacc で文法記述しようとして、結局既存のもの通りにはいかなかったとおもう。)
>>389
env なしだったのね。これは私が眼鏡かけずに読んだ完全な読み間違い。だけど、389の投稿のおかげでecho と /bin/echo の差にあるように組込みの関数の場合(export も組込み)になんか変になることが良くわかった。
元のbourne shell, ksh(とその亜流) で関数定義方法が違うからなんともいえないが、多分
name=value command arguments
の形式のcommand のところに、組込み関数とか、シェルでユーザ定義する関数を使う場合にも
外部コマンドと環境変数の使い方を共通にしたいという変更をしたところでちょっと疑問視される変更をしたと思う。