- ベストアンサー
BシェルとCシェル
Solarisサーバの運用において、シェルでスクリプトを作成する場合、BシェルとCシェルでは、どちらが多く用いられているでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ちょっと補足。 BshかCshかという選択ならBshですが、他の方が言っておられるようにbashなどで書いても構いません。 ・一般ユーザが利用するsetuidしていないスクリプト shでもbashでもzshでもなんでもよい。 csh系(tcshも)だけはやめた方が無難。 ・setuidしていいるスクリプト シェルスクリプトはsetuidしないのが安全。 csh系(tcshも)だけはやめときましょう。 ・Solaris以外のOSに移植するかも知れないスクリプト shかbashで書く。 OSにデフォルトで存在するシェルで書いておいた方が無難。 shはどのOSにもあるが、微妙なところで仕様が違うので要注意。 ただ、Solarisの/bin/shは一番古くて仕様がしょぼいので、 Solarisで動けばよそに持っていっても動くと期待できる。 ・システムのブート段階などで動くスクリプト 基本は/sbin/sh。シェルがスタティックリンクされている必要がある。
その他の回答 (3)
- entree
- ベストアンサー率55% (405/735)
/etc/init.d を見てみてください。全て B シェルで書かれているのが分かりますね。実際に Solaris に限らず、シェルスクリプトはほとんど B シェルもしくは bash (B シェル系) で書かれています。 C シェルは一般ユーザのログインシェルとしてよく用いられてきましたが (スクリプトを書くときは、一般ユーザでも普通は B シェル)、Solaris でも Solaris 8 から bash がデフォルト・インストールされるようになったため、C シェルを使う機会はますます減ってきていると思います。 あと、予断になりますが、root ユーザのログイン・シェルだけは /sbin/sh から変更してはなりません。
お礼
ありがとうございました。
- qaz_qwerty_me
- ベストアンサー率19% (214/1115)
Cシェルが流行っていた頃でも運用管理で利用するシェルはBシェルと言われていました。 最近は、Bシェル系のKSHかBashなどが利用され、Cシェルが余り利用されないのではないでしょうか?
お礼
ありがとうございました。
- a-saitoh
- ベストアンサー率30% (524/1722)
Bシェルです。 Solarisに限らず、シェルスクリプトをCシェルで書いてはいけません。
お礼
ありがとうございました。
お礼
ありがとうございました。