find lacks the option -printf, now what?
我还没有找到Mac的查找没有选项-printf的原因。
苹果通常决定删除与其他命令不正交的选项?
在没有coreutils的Mac中,如何获得与以下命令相同的结果?
1 2 | find . -printf"%i \ " // command in Ubuntu |
不是Apple删除了选项,而是OS X的UNIX基础(从回路中)主要从FreeBSD派生而来,其许多部分都可以追溯到原始的UNIX ...与GNU实用程序相对,后者被重新-具有许多功能的实现。
在这种情况下,FreeBSD的
1 | find . -print0 | xargs -0 stat -f '%i ' |
在GNU用户系统上,由于
MAc OS X查找二进制文件不支持-printf命令。在Mac上安装
嗯,短暂而又bend脚的原因。
我要补充一点,如果需要的话,没有什么可以阻止您安装GNU find(来自findutils)。如果使用fink,则有一个
或者,您可以
1 | find . -type f -exec stat -f"%z %N" {} \\; |
当然,这不是在Linux上执行相同操作的方法,但适用于MacOS
1 | find . -type f -exec stat -c"%s %N" {} \\; |
在linux上产生类似的输出(不相同,但关闭)。
Ubuntu附带了GNU版本的find,它比Mac OS X的find(具有BSD谱系)具有更多功能。
实际上,大多数Ubuntu的用户界面实用程序都来自GNU项目。 (因此,您有时会听到基于Linux的系统,称为" GNU / Linux"。)