shell - 测试 POSIX shell 合规性?

标签 shell posix

如何测试 shell 脚本以验证它是否符合 POSIX?我为各种版本的 Bash 和可能的其他 shell 编写了大量脚本。我希望能够确定哪些是完全符合 POSIX 的,哪些不是。理想情况下,我想找到类似 lint 的内容。但对于 shell 脚本。

最佳答案

静态验证脚本是否符合 POSIX 是不可能的,因为差异不仅限于语法更改,有些差异只是改变了某些命令的行为方式。此 link描述了 bash 和 POSIX 标准之间的差异。

但是,您可以使用 bash --posix ./your_script.sh 显式检查您的脚本正在运行。或使用 set -o posix在他们里面。

关于shell - 测试 POSIX shell 合规性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28654973/

相关文章:

mysql - 我可以让它更快吗 - SELECT min(date_time) FROM db.event - 在 bash 脚本中使用

linux - 为什么无法在函数中获取shell脚本的参数计数

python - 使用 shell=True w/list 时忽略 subprocess.call() 参数

c - 由于 SIGINT 导致的部分写入

c - 宏 hell : Platform-independent pointer to setjmp/sigsetjmp

shell - 为什么执行 SparkR 作业会拒绝使用 Oozie 的权限?

c - (struct *) vs (void *) -- C11/C99 中的函数原型(prototype)等价

c - 客户端和服务器想同时通话时是否需要多线程?

c - open() 没有正确设置文件权限

c++ - Linux Shell编程cp命令