【问题标题】:How to displays the owner privileges of the files in the current directory in linux os?如何在linux os中显示当前目录下文件的所有者权限?
【发布时间】:2021-05-28 19:24:01
【问题描述】:
我要显示当前目录下文件的所有者权限
例如这样的输出:
rwx addr_ph.txt
rw- add.txt
rw- a.txt
rw- filename.txt
rwx g.txt
rwx script
rwx script.save
我正在尝试编写此命令,但输出不正确:
ls -al | cut -d " " -f1,9
【问题讨论】:
标签:
linux
bash
shell
unix
command-line
【解决方案1】:
您只需执行此命令:
ls -al | sed '1d'| tr -s " " " " | cut -d" " -f1,9 | cut -c2-4,11-
【解决方案2】:
使用 GNU awk 和 stat:
stat --printf "%n %A\n" * | awk '{ printf "%s",substr($NF,2,3);for (i=1;i<=NF-1;i++) { printf " %s",$i } printf "\n" }'
使用 stat 打印文件名 (%n) 和人类可读权限 (%A)。将输出重定向到 awk 以打印最后一个空格分隔字段 (NF) 中权限的第二到第五个字符以及文件名(任何以空格分隔的字段 - 考虑到文件名中的任何空格)