find 명령의 -perm 옵션 +모드와 -모드의 차이에 대하여...

alenoa의 이미지

사람에따라 +로 사용하는 사람과 -로 사용하는 사람으로 나뉘어있더군요.

검색 결과값도 일견 동일해 보이는데 +와 -모드가 따로 있는 이유가 있을거라 생각되지만
find의 man 페이지를 열어본 결과 유의미한 차이를 찾지 못했습니다.

둘 사이에 어떤 차이가 있는 것인가요?

raymundo의 이미지

$ ls -l
total 0
----rw-rw-  1 gypark  staff  0 10 28 15:47 group.txt  (퍼미션 066)
-rw-rw-rw-  1 gypark  staff  0 10 28 15:47 other.txt  (퍼미션 666)
-------rw-  1 gypark  staff  0 10 28 15:47 owner.txt  (퍼미션 006)

$ find . -perm 220
 
  퍼미션이 정확히 220 인 파일 없음
 
 
$ find . -perm +220
 
  220 = 010 010 000
  1인 비트 두 곳(other=write, group=write) 중 하나만 매치해도 해당
 
.                  other=write
./group.txt                     group=write
./other.txt        other=write  group=write
 
 
 
$ find . -perm -220
 
  최소한 이 두 비트는 1이어야 함 (나머지 자리는 상관없음)
 
./other.txt        other=write  group=write 둘 다 1인 파일은 이것 뿐

좋은 하루 되세요!