나는 스트레스 테스트를 실행 AppleScript 스크립트가 있습니다. 테스트의 일부는 특정 파일을 열고 저장하고 닫는 것입니다. 어쨌든 파일은 파일이 저장되지 못하게하는 "확장 된 속성"을 선택했습니다. 이로 인해 스트레스 테스트가 실패합니다.
확장 된 속성을 제거하려면 어떻게합니까?
나는 스트레스 테스트를 실행 AppleScript 스크립트가 있습니다. 테스트의 일부는 특정 파일을 열고 저장하고 닫는 것입니다. 어쨌든 파일은 파일이 저장되지 못하게하는 "확장 된 속성"을 선택했습니다. 이로 인해 스트레스 테스트가 실패합니다.
확장 된 속성을 제거하려면 어떻게합니까?
답변:
xattr
명령을 사용하십시오 . 확장 된 속성을 검사 할 수 있습니다.
$ xattr s.7z
com.apple.metadata:kMDItemWhereFroms
com.apple.quarantine
-d
옵션을 사용하여 하나의 확장 된 속성을 삭제하십시오.
$ xattr -d com.apple.quarantine s.7z
$ xattr s.7z
com.apple.metadata:kMDItemWhereFroms
-c
옵션을 사용하여 모든 확장 된 속성을 제거 할 수도 있습니다 .
$ xattr -c s.7z
$ xattr s.7z
xattr -h
명령 행 옵션이 표시되며 xattr에는 맨 페이지가 있습니다.
-c
나를 위해 작동하지 않습니다 (OS X 10.6.8). -d
불평하지는 않았지만 아무런 효과가 없었습니다. 각 확장 속성의 이름을 다음과 같이 명시 적으로 지정해야합니다 xattr -rd <attrname> <folder/file>
(재귀 적으로 삭제). 존재하는 속성 (전체 디렉토리 트리에있는 동일한 속성)을 찾으려면 xattr <dir/file>
위의 답변과 같이 사용하십시오.
xattr -c
나에게 잘 작동하고 모든 메타 데이터가 성공적으로 제거됩니다.
Bavarious의 답변을 참조하십시오.
플래그 xattr
와 함께 사용 -c
하여 속성을 "지우십시오".
xattr -c yourfile.txt
디렉토리의 모든 파일에서 확장 된 속성을 재귀 적으로 제거하려면 -c
"clear"플래그를 -r
재귀 플래그 와 결합하십시오 .
xattr -rc /path/to/directory
공백이나 특수 문자가 포함 된 긴 경로가 있습니까?
를 열고 Terminal.app
입력을 시작 xattr -rc
하고 후행 공백을 포함시킨 다음 파일 또는 폴더를 Terminal.app
창으로 드래그하면 적절한 이스케이프가 포함 된 전체 경로가 자동으로 추가됩니다.
-c
OS X 10.5에 실패합니다 option -c not recognized
. 우리는 Apple의 PowerPC에서 테스트하기 위해 하나를 사용합니다. 그것은 OS X 지원의 하위 버전처럼 보인다 -l
, -p
, -w
와 -d
.
또 다른 재귀 접근법 :
# change directory to target folder:
cd /Volumes/path/to/folder
# find all things of type "f" (file),
# then pipe "|" each result as an argument (xargs -0)
# to the "xattr -c" command:
find . -type f -print0 | xargs -0 xattr -c
# Sometimes you may have to use a star * instead of the dot.
# The dot just means "here" (whereever your cd'd to
find * -type f -print0 | xargs -0 xattr -c
-c
OS X 10.5에 실패합니다 option -c not recognized
. 우리는 Apple의 PowerPC에서 테스트하기 위해 하나를 사용합니다. 그것은 OS X 지원의 하위 버전처럼 보인다 -l
, -p
, -w
와 -d
.
xattr ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
# com.apple.FinderInfo
# com.apple.lastuseddate#PS
# com.apple.metadata:kMDItemIsScreenCapture
# com.apple.metadata:kMDItemScreenCaptureGlobalRect
# com.apple.metadata:kMDItemScreenCaptureType
xattr -d com.apple.lastuseddate#PS ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
xattr -d kMDItemIsScreenCapture ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
xattr -l ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
# com.apple.FinderInfo
# com.apple.metadata:kMDItemScreenCaptureGlobalRect
# com.apple.metadata:kMDItemScreenCaptureType
xattr -c ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
xattr -r ~/Desktop
xattr -rd com.apple.FinderInfo ~/Desktop
xattr -rc ~/Desktop
경고 : 삭제 한 후에는 다시 가져 오지 마십시오!
오류 : 실행 취소가 없습니다.
사람들이 겪고있는 오류를 해결하고 싶었습니다.
오류가 나에게 견과류를 몰 았기 때문에 ...
맥에서 설치하면xattr
파이썬에서 에서 환경에 문제가있을 수 있습니다.
내 Mac에는 두 가지 경로가 있습니다.
xattr
type -a xattr
# xattr is /usr/local/bin/xattr # PYTHON Installed Version
# xattr is /usr/bin/xattr # Mac OSX Installed Version
따라서 -c
xargs에서 작동하지 않는 예제 중 하나 에서 bash에서는 기본적으로 비 Python 버전으로 설정되기 때문입니다.
-c
/usr/bin/xattr -c
-c
/usr/local/bin/xattr -c
# option -c not recognized
내 쉘 / 터미널의 기본값은 / usr / local / bin / xattr 이며 기본값 $PATH
/usr/local/bin:
은 이전의 것이기 때문 /usr/bin:
입니다.
파이썬을 제거하려고하면 다음을 볼 수 있기 때문에 이것을 증명할 수 있습니다 xattr
.
pip3 uninstall xattr
Uninstalling xattr-0.9.6:
Would remove:
/usr/local/bin/xattr
/usr/local/lib/python3.7/site-packages/xattr-0.9.6.dist-info/*
/usr/local/lib/python3.7/site-packages/xattr/*
Proceed (y/n)?
고치다 option -c not recognized
오류
xattr
을 .pip3 uninstall xattr
Terminal
창을 닫고 종료Terminal
Terminal
창을 .xattr
명령과 지금은 작동합니다.또는
파이썬을 유지하려면
xattr
다음을 사용하십시오.
/usr/bin/xattr
의 모든 Shell
명령Terminal
Python 버전은 xattr
이미지를 전혀 처리하지 않습니다.
Good-Mac:~ JayRizzo$ xattr ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
# com.apple.FinderInfo
# Traceback (most recent call last):
# File "/usr/local/bin/xattr", line 8, in <module>
# sys.exit(main())
# File "/usr/local/lib/python3.7/site-packages/xattr/tool.py", line 196, in main
# attr_value = attr_value.decode('utf-8')
# UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 2: invalid start byte
Good-Mac:~ JayRizzo$ /usr/bin/xattr ~/Desktop/screenshot\ 2019-10-23\ at\ 010212.png
# com.apple.FinderInfo
# com.apple.lastuseddate#PS
# com.apple.metadata:kMDItemIsScreenCapture
# com.apple.metadata:kMDItemScreenCaptureGlobalRect
# com.apple.metadata:kMDItemScreenCaptureType
참고 : 나는 할 수 없었다 현재 버전 0.9.6에 대한 Python 도움말 페이지를 찾을
읽어 주셔서 감사합니다!