Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于查找与文件权限相关的所需输出的Linux脚本_Linux_Shell_Scripting - Fatal编程技术网

用于查找与文件权限相关的所需输出的Linux脚本

用于查找与文件权限相关的所需输出的Linux脚本,linux,shell,scripting,Linux,Shell,Scripting,所需输出:仅按文件权限分组的文件计数。 e、 g %m代表-printf格式的文件权限\n代表换行符 %m代表-printf格式的文件权限\n代表换行符。请参见[ParsingLs](mywiki.wooledge.org/ParsingLs)了解为什么这样做是个坏主意。然后,或许可以尝试使用类似于find的方法-printf%m\\n | sort | uniq-c?您可以在shell中的单个带引号的字符串中包含换行符,并且在awk脚本中添加一些换行符会使我们更容易理解。请参阅[Parsing

所需输出:仅按文件权限分组的文件计数。 e、 g

%m
代表
-printf
格式的文件权限
\n
代表换行符


%m
代表
-printf
格式的文件权限
\n
代表换行符。

请参见[ParsingLs](mywiki.wooledge.org/ParsingLs)了解为什么这样做是个坏主意。然后,或许可以尝试使用类似于
find的方法-printf%m\\n | sort | uniq-c
?您可以在shell中的单个带引号的字符串中包含换行符,并且在awk脚本中添加一些换行符会使我们更容易理解。请参阅[ParsingLs](mywiki.wooledge.org/ParsingLs)了解为什么这样做不好。然后,或许可以尝试使用类似于
find的方法-printf%m\\n | sort | uniq-c
?您可以在shell中的单个带引号的字符串中包含换行符,在awk脚本中添加一些换行符将使我们更容易理解。
ls -alR | awk '{k=0; for(i=0;i<=8;i++) k+=((substr($1, i+2, 1)~/[rwx]/)*2^(8-i)); if(k)printf("%o", k); print}' | cut -c 1-3 | sort -n | uniq -c | cut -d " " -f 6-8
 1 .:
./.
 1 ./b
 2 ./D
 1 ./M
 2 ./o
 1 ./P
 1 ./T
tot
 1 ./V
 1 1./
 1 4./
 2 10.
 1 40.
 2 500

20 640
644

700
78 755
 3 764
77 775
 6 777
2 774
3 664
find /path/to/dir -printf '%m\n' | sort | uniq -c