use*_*294 17 linux shell posix
我已经读到符合 POSIX 的操作系统(例如:Linux)必须有shshell。
但是它必须sh在/bin目录中,还是可以在任何目录中?
Mic*_*mer 23
POSIX只强制要求/dev和/tmp目录的存在,以及/dev/null,/dev/tty和/dev/console文件。标准实用程序必须存在,但没有指定特定位置。可能根本没有 a /bin,如果有,则可能不包含 a sh,如果有,则可能不是 POSIX sh。
您可以使用以下命令获取PATH包含 POSIX 工具(包括 )的有效变量:shgetconf
$ PATH=$(getconf PATH)
$ sh
Run Code Online (Sandbox Code Playgroud)
例如,这在 Solaris 上很有用,其中默认sh值不是 POSIX-compatible,但sh提供了一个兼容的并且可以通过这种方式访问(因为Solaris 是经过认证的 Unix)。getconf PATH将包括/usr/xpg4/bin在前面,其中包含 POSIXsh和许多其他必需的工具(包括无用的cd工具,例如)。
| 归档时间: |
|
| 查看次数: |
7404 次 |
| 最近记录: |