我正在使用这样的统计数据:
stat -f "%Sp %p %l %Su %u %Sg %g %z %a %N %Y" /*
我还需要判断该文件是否隐藏(MacOS)。注释.
是不够的。 MacOS 隐藏更多文件。
例如,这就是我需要的:
ls -lO
total 9
drwxrwxr-x 32 root admin sunlnk 1024 Jun 4 22:00 Applications
drwxr-xr-x 66 root wheel sunlnk 2112 Feb 18 23:23 Library
drwxr-xr-x@ 9 root wheel restricted 288 Jan 1 2020 System
drwxr-xr-x 7 root admin sunlnk 224 May 18 08:12 Users
drwxr-xr-x 4 root wheel hidden 128 Jun 7 12:49 Volumes
drwxr-xr-x@ 38 root wheel restricted,hidden 1216 Jan 1 2020 bin
drwxr-xr-x 2 root wheel hidden 64 Jun 6 2020 cores
dr-xr-xr-x 3 root wheel hidden 4602 Jun 1 14:24 dev
lrwxr-xr-x@ 1 root wheel restricted,hidden 11 Jan 1 2020 etc -> private/etc
为了提高处理速度,我需要将其作为一个命令运行。我的目标全部来自上面的统计数据加上ls
命令的第五列。有什么提示吗?
我注意到隐藏物品的%T
打印。@
然而,它也可能出于其他原因而显示出来。这个能用还是不能用?
如果没有stat
找到解决方案,有没有办法将结果与命令行上的stat
额外列合并?ls -lO
答案1
如果 macos与 FreeBSD 类似,则可以在规范中以数字形式或解码文本形式(如 )来stat
表示标志。format
%f
%Sf
ls -lo
有关详细信息,请参阅您系统上的man stat
、man chflags
和。man ls