shコマンドとは正確には何ですか?


33

shコマンドが何であるかわかりませんか?

http://unixhelp.ed.ac.uk/CGI/man-cgi?sh

ファイルを実行しますか?

Tomcatのように:

sh /usr/local/tomcat/bin/shutdown.sh

申し訳ありませんが、混乱しています。


1
@ Chopper3:タグはあなたの意見を表現するためではなく、コメントです。
ThatGraemeGuy

回答:


32

shはボーンシェルです。

いくつかのシェルがありますが、そのうちのbourneはすべてのUNIXシステムにインストールされている古い標準であり、通常、保証できるシェルが存在します。

シェルは、入力を受け取り、出力を画面に戻したり、正しいファイルなどに出力したり、ジョブの管理、強制終了、式のテストなどに必要なすべての基本的な組み込みコマンドを提供するコマンドインタープリターです。

上記のコマンドは、bourneシェルを使用してそのシェルスクリプトを実行することを言っています。異なるシェルは異なる構文を使用するため、正しいシェルを使用することが要件です。シェルの最初の行は、使用するものも定義する必要があります。#!/ bin / shは、use / bin / sh


3
多くのシステム(Mac OS Xなど)では、sh実際にはbash、別名Bourne-again shellです。コマンドsh --versionはもう一つを伝えます。ただし、Bourneシェルとの後方互換性があります。
アルジャン

6

shはボーンシェルです。/usr/local/tomcat/bin/shutdown.shシェルスクリプトです。 シェルスクリプトとしてsh file実行さfileれます。一般に、実行ビットを設定して実行するだけ./fileです。


わかりましたので、外出して、そのコマンドを実行するために暗黙的にシェルを変更します。
user3183

技術的には、スクリプトを変更することになります。#!/ binに/ bashのその後:chmodのは+ X /usr/local/tomcat/bin/shutdown.shそれを実行可能にするために必ず最初の行があることを確認します
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.