@는 OS X 터미널의“ls”출력에서 무엇을 의미합니까?


81

ls디렉토리에서 작업을 수행하면 다음과 같은 결과가 나타납니다.

drwxr-xr-x@ 12 xonic  staff    408 22 Jun 19:00 .
drwxr-xr-x   9 xonic  staff    306 22 Jun 19:42 ..
-rwxrwxrwx@  1 xonic  staff   6148 25 Mai 23:04 .DS_Store
-rw-r--r--@  1 xonic  staff  17284 22 Jun 00:20 filmStrip.cpp
-rw-r--r--@  1 xonic  staff   3843 21 Jun 21:20 filmStrip.h

무슨 @뜻 인지 궁금했습니다 .



1
xattr -r -d com.apple.TextEncoding *C ++ 헤더 또는 소스 파일과 같은 텍스트 파일이 로컬로 작성된 경우 해당 파일을 제거합니다 . 다운로드 한 경우 xattr -r -d com.apple.quarantine *제거했을 가능성이 높으므로 Makefile 편집과 같은 작업을 수행 할 수 있습니다. 어떤 이유로, 애플은 하지 않는다 당신이 Makefile을 편집 할 수 있지만, 않습니다 , 당신은 Makefile을 실행할 수 있습니다 com.apple.quarantine. 이동 그림 ...
jww

답변:


75

파일에 확장 된 속성이 있음을 나타냅니다. ls -l@그들을 볼 때 사용 하십시오.

xattr이러한 속성을 편집 하는 데 사용할 수 있습니다 . xattr -h인라인 도움말을 제공합니다.


8
감사. com.apple.quarantine을 찾았습니다. 여기에 무엇이 있고 완전성을 위해 처리하는 방법이 있습니다. superuser.com/questions/28384/…
xon1c

24

내 머리 꼭대기에서 확장 가능한 속성을 가진 파일과 관련이 있다고 생각합니다. 비슷한 토론에 대한 링크는 다음과 같습니다.

http://discussions.apple.com/thread.jspa?messageID=5791060

따라서 ls를 수행 할 때 "@"가있는 파일이 표시되면 다음을 수행하십시오.

xattr -l <filename>

확장 된 속성이 표시됩니다.

자세한 내용은 xattr의 도움말을 확인할 수 있습니다.

xattr --help
usage: xattr [-l] file [file ...]
       xattr -p [-l] attr_name file [file ...]
       xattr -w attr_name attr_value file [file ...]
       xattr -d attr_name file [file ...]

The first form lists the names of all xattrs on the given file(s).
The second form (-p) prints the value of the xattr attr_name.
The third form (-w) sets the value of the xattr attr_name to attr_value.
The fourth form (-d) deletes the xattr attr_name.

options:
  -h: print this help
  -l: print long format (attr_name: attr_value)

"-l"로 추가 속성을보고 "-d"로 제거하면 아마도 원하는 작업을 수행하는 것처럼 보입니다. 먼저 임시 디렉토리에서 이것을 연습하고 그것이 작동하는지 확인하십시오;)


고마워요! 문제의 디렉토리가 com.apple.quarantine으로 표시되어있는 것 같습니다.이 스크립트는 닷지 스크립트 및 앱을 인터넷으로부터 보호하기위한 보안 수단입니다. 디렉토리가 나열되지 않는 문제를 일으킬 수 있습니다. : / 좀 더 둘러보고 해결책을 찾으면 게시하겠습니다.

20

Mac OS 10.6.1의 ls (1) 매뉴얼 페이지에서 :

파일 또는 디렉토리에 확장 된 속성이있는 경우 -l 옵션으로 인쇄 된 권한 필드 뒤에 '@'문자가옵니다. 그렇지 않으면 파일 또는 디렉토리에 확장 보안 정보 (예 : 액세스 제어 목록)가있는 경우 -l 옵션으로 인쇄 된 권한 필드 뒤에 '+'문자가옵니다.

사용 가능한 옵션 목록에서 :

 -@      Display extended attribute keys and sizes in long (-l) output.

 -e      Print the Access Control List (ACL) associated with the file, if present, in long (-l) output.

이를 통해 확장 옵션의 가치를 확인할 수 있습니다. FWIW, ACL 정보는 이미 알고있는 chmod (1) 유틸리티를 사용하여 설정할 수 있습니다. :-)

명령 줄에서 확장 된 속성으로 무엇이든 할 수있는 쉬운 방법은 없습니다.


2
xattr 명령을 사용하여 확장 된 속성을보고 조작 할 수 있습니다 (OS X v10.5 및 .6에서만 사용 가능). 매뉴얼 페이지는 없지만 xattr -h내부 도움말을 인쇄합니다.
고든 데이비스 슨

xattr이제 매뉴얼 페이지가 있으며 xattr -l file모든 속성을 나열하거나 xattr -p attribute_name file특정 속성을 인쇄하는 데 사용할 수 있습니다 .
Lri

9

로부터 LS에 대한 man 페이지 :

-l 옵션을 지정하면 각 파일에 대해 파일 모드, 링크 수, 소유자 이름, 그룹 이름, 파일의 바이트 수, 약식 월, 월별 파일이 마지막으로 수정 된 정보가 표시됩니다. 마지막으로 수정 된 시간 파일, 마지막으로 수정 한 시간 파일 및 경로 이름

또한 내용이 표시된 각 디렉토리에 대해 디렉토리의 파일이 사용하는 총 512 바이트 블록 수는 디렉토리의 파일 정보 바로 앞에 한 줄씩 표시됩니다.

파일 또는 디렉토리에 확장 된 속성이있는 경우 -l 옵션으로 인쇄 된 권한 필드 뒤에 '@'문자가옵니다. 그렇지 않으면, 파일 또는 디렉토리에 확장 보안 정보 (예 : 액세스 제어 목록)가있는 경우, -l 옵션으로 인쇄 된 권한 필드는 다음과 같이 '+'문자로 낮아집니다.

사용하다:

ls -la@e

해당 속성 / 정보가있는 파일 또는 디렉토리에 대한 자세한 정보


8

이것은 확장 된 속성 및 액세스 제어와 관련이 있습니다.

로부터 태양 LS의 man 페이지 :

권한 뒤의 문자는 ACL 또는 확장 된 속성 표시기입니다. 확장 속성이 파일과 연관되고-@ 옵션이 유효한 경우이 문자는 @입니다. 그렇지 않으면이 문자는 사소하지 않은 ACL이 파일과 연관된 경우 더하기 부호 (+) 문자이거나 그렇지 않은 경우 공백 문자입니다.


7

"@"은 파일에 "확장 된 속성"이 있음을 의미합니다.

" ls -@ -l" 를 수행 하면 각 파일에 어떤 속성이 있는지 확인할 수 있습니다. xattr -l pgsql.so특정 파일의 속성을 덤프하기 위해 " " 와 같은 작업을 수행 할 수도 있습니다.

일반적으로 구식 FinderInfo, 텍스트 인코딩 정보 또는 "이 파일은 웹에서 다운로드되었습니다. 파일을 열겠습니까?" 경고.


1
확장 된 속성은 mac 플랫폼에 고유하지 않습니다. 많은 운영 체제가이 파일 레벨 기능을 지원합니다.
Stefan Kendall

@iftrue : 궁극적으로 파일 시스템 기능입니다.
Joey

6

맨 페이지에서ls :

긴 형식
[…] 파일 또는 디렉토리에 확장 된 속성이있는 경우 -l옵션으로 인쇄 된 권한 필드 뒤에 ' @'문자 가옵니다 . […]


2
'@'은 파일 / 디렉토리에 ACL이 연결되어 있음을 나타 내기 위해 일반적으로 존재하는 '+'를 숨길 수 있습니다. xlsrs, ACL (있는 경우) 및 플래그를 나열하는 'ls -le @ O'를 시도하십시오.
Gordon Davisson
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.