所以,我想使用 shell 快速获取文件的组 ID (GID((更准确地说,是文件所有者的 GID(。
在我的 shell 脚本中的某个地方,我有以下代码:
stat -c "%g" foo.txt
在我尝试过的每个 Linux 中,上述内容都可以完美运行。
但是在Mac OS X上,我得到:统计:非法选项 -- C用法: stat [-FlLnqrsx] [-f 格式] [-t timefmt] [文件 ...]
如何使用 shell 命令在 MacOS X 上获取文件的 GID?最好也可以在 Linux 上运行的东西,但如果需要,我可以引入 if-else。
OS X 上的等效项是 stat -f "%g" foo.txt
。
我使用以下命令:
ls -n my-file.txt
这将输出:
-rw-r--r-- 1 502 20 578 Dec 3 20:44 my-file.txt
在这里,502 是用户 id (uid(,20 是组 id (gid(,578 是以字节为单位的文件大小。
对于我的Mac OS Monterey(12.4(,上述方法不起作用。我会传入字符串格式选项S
以及g
如下所示 stat -f "%Sg" foo.txt