"sh"は "/bin"ディレクトリになければなりませんか?

POSIX準拠のオペレーティングシステム(Linuxなど)にはシェルが必要であることを読みましたsh

しかし、ディレクトリshに存在する必要がありますか、それともどのディレクトリにも存在できますか?/bin

ベストアンサー1

POSIXは強制ディレクトリ/dev/tmpディレクトリのみ存在します。、、、、/dev/nullおよびファイル/dev/tty/dev/console標準ユーティリティが必要ですが、特定の場所は指定されません。 aはまったく存在しない場合もあれば/bin、含まれていない場合もありsh、存在する場合はPOSIXではない場合がありますsh

以下を使用して、PATHPOSIXツール(含む)で有効な変数を取得できます。shgetconf注文する:

$ PATH=$(getconf PATH)
$ sh

これは、たとえば次のようなSolarisで役立ちます。デフォルトは POSIX と互換性shがありません。shしかし、この方法でコンプライアンスとアクセスを提供します(なぜならSolarisは認証されたUnixです。)。 POSIXやgetconf PATH他の多くの必須ツール(/usr/xpg4/binsh次のような役に立たないものを含めてください。cd)。

おすすめ記事