プロが教える店舗&オフィスのセキュリティ対策術

Unixとlinuxのシェルスクリプトについての質問です。

Unixで動くシェルスクリプトを、linuxでも動かせるのでしょうか?

実験できる実力がなく、興味本位なのですが、経験や知識を踏まえて教えて頂けないでしょうか。

A 回答 (4件)

UnixにもLinuxにも種類が複数あります。


(ちなみに他の方が混乱しているMacOSは、NO.3の書かれている通りLinuxではなくBSDをベースにしたUnixの一種です)
またそれぞれで動くシェルというのもCシェルやらTシェルやらBシェルやらいろいろあります。

例えばHP-UX上のBシェル(bashとか)で書かれたスクリプトをRHELのBシェルで動かせば基本的にはうごきます。
HP-UX上のTシェルで書かれたスクリプトも、RHELにTシェルを入れれば同様に動くと思われます。ここまで書けば分かると思いますが、HP-UX上のTシェルで書かれたスクリプトは、TシェルをインストールしてないRHEL上では動きません。

ただし、同種のシェルで書かれたスクリプトには互換性があっても、そのスクリプト内でCallしているアプリケーションが入っていないと動きません。
たとえば、内部でsqliteのコマンドを実行していたりする場合、sqliteが入っていなければエラーになります。

という感じで回答になりますでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2017/09/18 08:11

UNIX で動くシェルスクリプトなら Linux でも動くと思うけど, Unix だとわかんないねぇ.



ちなみに Mac OS はもともと BSD ベースだったはずだから「Linux」というのは語弊がある.
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2017/09/18 08:12

ええと、Mac OSはUnix系すなわちLinuxの仲間と思ってたんだけど違うんだ。

へえー。

・・・本題・・・

一部のコマンドで引数が異なることがあります。(いわゆる方言があるってこと)
ですのでLinux同士であってもディストリビュータによっては互換性が無い場合があります。
ましてやUnixでは基本コマンドと基本的な引数以外は互換が無いと思っておきましょう。

そんなわけで、シェルの種類を確認して、実行するコマンドと引数を切り替えるようなシェルスクリプトにすれば良いわけです。
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2017/09/18 08:12

シェルスクリプトのシェルスクリプトは何を?



Unix は Mac OS のことですが、それは理解してますか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます

お礼日時:2017/09/18 08:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!