Re: [Summary] tcsh% false ; ( echo $? ; pwd )
いいじまです。
> >10.2 まで tcsh でしたが、10.3 はデフォルトが bash になりました。
> >もちろん tcsh も残っていますが。
>
> この文脈では、Mac OS X の標準で login shell に設定されてい
> る shell のことを言っているんだと思いますが、まさか 10.2 で
> は /bin/sh の実体まで tcsh だったりはしませんよね?
> 10.1 の頃は /bin/sh の実体が zsh で往生したものですが、こ
> ちらの変遷はどうなっているんでしょう?10.3 では bash なんで
> しょうけど 10.2 では?
私は MacOS X に触ったのは 10.3 が初めてなので何も知らないのですが、
少なくとも、/bin/sh を起動したときに tcsh の文法が適用されるという
ことはありえないと思います。csh/tcsh と sh/bash/zsh は全く互換性のない
別々の言語だと思っていますので。
> # /bin/sh が bash な Linux もそれなりに困りものだけど、か
> #と言って dash に置換えた Debian が良いかと言うとそうでもな
> #さそうだし。
でも、bash は sh の名前で起動されたときと bash の名前で起動されたときとで
挙動を変えていますから、きちんと sh の文法の範囲内で書いていれば、実体が
bash であっても問題ないと私は認識しているのですが……なにか問題が起こる
具体例がありましたら示してもらえませんか?
むしろ、#!/bin/sh と書きながら bash の拡張を使っているスクリプトの横行が
問題。
========================================================================
飯嶋 浩光 / でるもんた・いいじま http://www.ht.sakura.ne.jp/~delmonta/
IIJIMA Hiromitsu, aka Delmonta mailto:delmonta@ht.sakura.ne.jp
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735