假设我有一个位于的文件/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/bin/java
。
我想列出它的所有父目录以查看它们的权限,以便获得如下所示的内容,这样我就可以追踪权限问题。
drwxr-xr-x 7 root root 4096 Dec 16 17:50 java
dr-xr-xr-x 2 root root 4096 Dec 16 17:50 bin
dr-xr-xr-x 3 root root 4096 Dec 16 17:50 jre
drwxr-xr-x 14 root root 2920 Dec 16 17:50 java-1.6.0-openjdk-1.6.0.0.x86_64
...
这可能吗?
答案1
一个主意:
FILE=/usr/bin/ppmpat
until [ "$FILE" = "/" ]; do
ls -lda $FILE
FILE=`dirname $FILE`
done
当然,将 FILE 更改为您想要的文件。顺序确实与您的要求相反(从文件到顶部),但最终您可以通过“tac”运行命令(如果需要);)
我的输出:
-rwxr-xr-x 1 root root 22672 Oct 17 2011 /usr/bin/ppmpat
drwxr-xr-x 2 root root 114688 Dec 19 07:04 /usr/bin
drwxr-xr-x 13 root root 4096 Feb 11 2013 /usr
或者通过管道输入“tac”:
drwxr-xr-x 13 root root 4096 Feb 11 2013 /usr
drwxr-xr-x 2 root root 114688 Dec 19 07:04 /usr/bin
-rwxr-xr-x 1 root root 22672 Oct 17 2011 /usr/bin/ppmpat