当前位置:  开发笔记 > 运维 > 正文

Unix:如何检查特定目录的权限?

如何解决《Unix:如何检查特定目录的权限?》经验,为你挑选了7个好方法。

我知道使用ls -l "directory/directory/filename"告诉我文件的权限.如何在目录上执行相同操作?我显然可以ls -l在层次结构中较高的目录上使用,然后滚动直到我找到它但是这很痛苦.如果我ls -l在实际目录上使用它,它会提供其中的文件的权限/信息,而不是实际目录.我在Mac OS X 10.5和Linux(Ubuntu Gutsy Gibbon)的终端上试过这个,结果相同.我应该使用某种旗帜吗?



1> Johannes Sch..:

这是简短的回答:

$ ls -ld directory

这是它的作用:

-d, --directory
    list directory entries instead of contents, and do not dereference symbolic links

您可能对联机帮助页感兴趣.这就是所有人在这里得到他们的好答案的地方.

请参阅在线手册页


它可能是标准术语,但对于可能会提出这样一个问题的人来说,这可能会让行话混乱.
我认为这个手册的措辞很差.在我开始谷歌搜索之前,我搜过了五次.我不希望目录'条目'(事物'进入'目录?像他们的文件和子目录?)和他们的'内容'(他们听起来像我的相同概念),我想目录*本身*.
描述条目可能解决此问题的一行.
它是完全标准的术语,目录_themelves_是目录条目,即文件系统中的条目

2> Piotr Lesnic..:

stat如果需要有关文件/目录的详细信息,也可以使用该命令.(正如你所说,你正在学习^^)


stat会告诉你很多东西的权限:(0755/drwxr-xr-x)
这很方便,所以你可以看到数字权限格式 - ty
"stat -c%a directory"这将以数字方式显示

3> Taylan..:

还有

getfacl /directory/directory/

其中包括ACL

这里有关于Linux ACL的一个很好的介绍



4> 小智..:

在GNU/Linux中,尝试使用ls,namei,getfacl,stat.

对于迪尔

[flying@lempstacker ~]$ ls -ldh /tmp
drwxrwxrwt. 23 root root 4.0K Nov  8 15:41 /tmp
[flying@lempstacker ~]$ namei -l /tmp
f: /tmp
dr-xr-xr-x root root /
drwxrwxrwt root root tmp
[flying@lempstacker ~]$ getfacl /tmp
getfacl: Removing leading '/' from absolute path names
# file: tmp
# owner: root
# group: root
# flags: --t
user::rwx
group::rwx
other::rwx

[flying@lempstacker ~]$ 

要么

[flying@lempstacker ~]$ stat -c "%a" /tmp
1777
[flying@lempstacker ~]$ stat -c "%n %a" /tmp
/tmp 1777
[flying@lempstacker ~]$ stat -c "%A" /tmp
drwxrwxrwt
[flying@lempstacker ~]$ stat -c "%n %A" /tmp
/tmp drwxrwxrwt
[flying@lempstacker ~]$

对于文件

[flying@lempstacker ~]$ ls -lh /tmp/anaconda.log
-rw-r--r-- 1 root root 0 Nov  8 08:31 /tmp/anaconda.log
[flying@lempstacker ~]$ namei -l /tmp/anaconda.log
f: /tmp/anaconda.log
dr-xr-xr-x root root /
drwxrwxrwt root root tmp
-rw-r--r-- root root anaconda.log
[flying@lempstacker ~]$ getfacl /tmp/anaconda.log
getfacl: Removing leading '/' from absolute path names
# file: tmp/anaconda.log
# owner: root
# group: root
user::rw-
group::r--
other::r--

[flying@lempstacker ~]$

要么

[flying@lempstacker ~]$ stat -c "%a" /tmp/anaconda.log
644
[flying@lempstacker ~]$ stat -c "%n %a" /tmp/anaconda.log
/tmp/anaconda.log 644
[flying@lempstacker ~]$ stat -c "%A" /tmp/anaconda.log
-rw-r--r--
[flying@lempstacker ~]$ stat -c "%n %A" /tmp/anaconda.log
/tmp/anaconda.log -rw-r--r--
[flying@lempstacker ~]$



5> Mehul Jariwa..:

$ ls -ld目录

(ls)表示文件和目录的列表. ( - )表示该文件是常规文件. (l)表示长期上市. (d)表示该文件是一个目录,基本上是一种特殊的文件.



6> Filip Ekberg..:

除了上面的帖子,我还想指出"man ls"会给你一本关于"ls"(List"命令的好手册).

此外,使用ls -la myFile将列出并显示有关该文件的所有事实.



7> Tony Topper..:

在OS X上,您可以使用:

ls -lead

e选项显示ACL.ACL对于了解系统的确切权限非常重要.

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有