我需要从 shell 脚本中检测使用哪个版本的 find 命令。GNU find 支持该--version
参数,但 OSX 上的 find 命令显然不支持该参数。有没有办法检测它是哪个版本?
答案1
$ strings `which find`|grep find.c
抱歉,找不到比这更好的方法。但我相信你应该只检查操作系统版本,而不是单个程序。
答案2
你不能。由于你没有进一步解释为什么你需要它,我只能建议你只使用 POSIX 标准指定的 find 功能。只需尝试 --version 参数,就可以轻松区分 GNU find 和 BSD find(MacOS X 附带的 find)。