Як перевірити дозволи певного каталогу?


315

Я знаю, що за допомогою ls -l "directory/directory/filename"підказує мені дозволи файлу. Як зробити те ж саме в каталозі?

Я, очевидно, міг би скористатися ls -lкаталогом вище в ієрархії, а потім просто прокрутити, поки не знайду, але це така біль. Якщо я використовую ls -lфактичний каталог, він дає дозволи / інформацію про файли всередині нього, а не про фактичний каталог.

Я спробував це в терміналі як Mac OS X 10.5, так і Linux (Ubuntu Gutsy Gibbon), і це той самий результат. Чи є якийсь прапор, який я повинен використовувати?

Відповіді:


418

Ось коротка відповідь:

$ ls -ld directory

Ось що це робить:

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

Можливо, вас зацікавлять manpages . Ось тут усі люди тут отримують свої приємні відповіді.

зверніться до сторінок чоловіка в Інтернеті


24
Я думаю, що сторінка man недостатньо сформульована. Я прогризав це п’ять разів, перш ніж почав гуглювати. Я не хочу каталоги «записів» (річ «увійшли» в каталоги? Як їх файли і підкаталоги?) , Ні їх «зміст» (вони звучать як же поняття для мене), я хочу каталоги самих .
користувач151841

2
це повністю стандартна термінологія, самі каталоги - це записи каталогів, тобто записи у файловій системі
alldayremix

33
Це може бути стандартна термінологія, але для когось, хто, ймовірно, задасть таке запитання, це, мабуть, плутає жаргон.
CatShoes

60

Ви також можете скористатися statкомандою, якщо ви хочете детальну інформацію про файл / каталог. (Я вказую це, як ви говорите, ви вчите ^ ^)


4
stat покаже вам серед багатьох прав дозволу: (0755 / drwxr-xr-x)
zzapper

2
це зручно , так що ви можете побачити числовий формат дозволів , а також - ти
висадилися

2
"stat -c% a directory" це покаже числовим способом
Nerius Jok

2
Відповідний на macOS є stat -f %A dir_or_filename.
iled


10

У 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 ~]$

9

$ ls -ld каталог

(ls) вказує список файлів та каталогів.

(-) вказує, що файл - це звичайний файл.

(l) вказує на довгий перелік.

(d) вказує, що файл - це каталог, який в основному є спеціальним видом файлів.



5

На додаток до вищезгаданих дописів, я хотів би зазначити, що "man ls" дасть вам хороший посібник про команду "ls" (Список ").

Крім того, за допомогою ls -la myFile перелічить та покаже всі факти про цей файл.


5

В OS X можна використовувати:

ls -lead

Параметр e показує ACL. А ACL дуже важливі для того, щоб знати, які точні дозволи у вашій системі.


2

ls -lstr

Це показує звичайний перегляд ls з дозволами та group: user

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.