Unix 파일 권한에 사용할 수 있는 문자는 모두 무엇입니까?

Unix 파일 권한에 사용할 수 있는 문자는 모두 무엇입니까?

ls -l명령에서 반환된 Unix 파일 권한 과 일치하는 정규식을 작성하려고 합니다 .여기첫 번째 필드에 가능한 모든 문자는 d,c,l,p,s,b,D라는 것을 알았습니다. 이제 나머지 필드에 가능한 문자는 모두 무엇입니까? 이것이 지금까지 내 정규식의 모습입니다.

/[-dclpsbD][-rwx]{9}/

답변1

대신 다음 ls을 사용하십시오 find -type.

File is of type:
b      block (buffered) special
c      character (unbuffered) special
d      directory
p      named pipe (FIFO)
f      regular file
l      symbolic  link
s      socket
D      door (Solaris)

그리고 find -perm:

-perm mode
    File's permission bits are exactly mode (octal or symbolic). Since an exact
match is  required, if  you  want to use this form for symbolic modes, you may 
have to specify a rather complex mode string. For example -perm g=w will only 
match files which have mode 0020 (that is, ones for which group write permission
is the only permission set). It is more likely that you will want to use the `/'
or `-' forms, for example -perm -g=w, which matches any  file  with  group  write
permission.

-perm -mode
    All of the permission bits mode are set for the file. Symbolic modes are
accepted in this form, and this is usually the way in which would want to use 
them.  You must specify `u', `g'  or  `o' if you use a symbolic mode.

-perm /mode
    Any of the permission bits mode are set for the file.  Symbolic modes are 
accepted in this form. You must specify `u', `g' or `o' if you use a symbolic mode.
If no permission bits in mode are set, this test matches any file (the idea here
is to be consistent with the behaviour of -perm -000).

-perm +mode
    Deprecated, old way of searching for files with any of the permission bits in
mode set. You should use -perm /mode instead. Trying to use the `+' syntax with
symbolic modes will yield surprising results. For example, `+u+x' is a valid
symbolic mode (equivalent to +u,+x, i.e.  0111) and will therefore not be 
evaluated as -perm +mode but instead as the exact mode specifier -perm mode and so
it matches files with exact permissions 0111 instead of files with any execute bit
set. If you found this paragraph confusing, you're not alone - just use -perm 
/mode. This form of the -perm test is deprecated because the POSIX specification
requires the interpretation of a leading `+' as being part of a symbolic mode, and
so we switched to using `/' instead.

관련 정보