티스토리 뷰
Revision History
2015/04/10 15:07:37 - 최초 작성
2015/11/17 15:18:08 - 다운로드 경로 설정 (다른 파일 참조시) 추가
Reference Page
XATTR(1) BSD General Commands Manual
맥 확장 속성 관리 명령
>>>>> 파일의 전체 확장 속성 확인하는 방법
ls 명령어
$ ls -l@
total 12488
-rw-r-----@ 1 kiros33 staff 6390832 Apr 10 10:40 1.pdf
com.apple.metadata:kMDItemWhereFroms 81
com.apple.quarantine 68
파일 지정
$ xattr -l 1.pdf
com.apple.metadata:kMDItemWhereFroms:
00000000 62 70 6C 69 73 74 30 30 A2 01 02 5F 10 45 68 74 |bplist00..._.Eht|
00000010 74 70 3A 2F 2F 65 74 74 72 65 6E 64 73 2E 65 74 |tp://ettrends.et|
00000020 72 69 2E 72 65 2E 6B 72 2F 65 74 74 72 65 6E 64 |ri.re.kr/ettrend|
00000030 73 2F 64 6F 77 6E 6C 6F 61 64 50 64 66 2E 64 6F |s/downloadPdf.do|
00000040 3F 70 61 70 65 72 6E 6F 3D 30 39 30 35 30 30 32 |?paperno=0905002|
00000050 30 33 33 5F 10 2B 68 74 74 70 3A 2F 2F 65 74 74 |033_.+http://ett|
00000060 72 65 6E 64 73 2E 65 74 72 69 2E 72 65 2E 6B 72 |rends.etri.re.kr|
00000070 2F 65 74 74 72 65 6E 64 73 2F 6D 61 69 6E 2E 64 |/ettrends/main.d|
00000080 6F 08 0B 53 00 00 00 00 00 00 01 01 00 00 00 00 |o..S............|
00000090 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 |................|
000000A0 00 00 00 81 |....|
000000a4
com.apple.quarantine: 0001;55272a22;Google Chrome.app;5454A12C-4826-4A87-B3EB-0C5352C4D3C1
>>>>> 다운로드 경로 보기
다운로드한 파일의 확장 속성 확인하는 방법
- 값의 저장 방식은 일반 텍스트 방식과 이진 형식이 있고 이진으로 저장된 경우 Hex 형식으로 표시, -x 옵션을 추가하면 텍스트로 저장된 문자열도 Hex 표현식으로 표시
$ xattr -px com.apple.metadata:kMDItemWhereFroms 1.pdf
62 70 6C 69 73 74 30 30 A2 01 02 5F 10 45 68 74
74 70 3A 2F 2F 65 74 74 72 65 6E 64 73 2E 65 74
72 69 2E 72 65 2E 6B 72 2F 65 74 74 72 65 6E 64
73 2F 64 6F 77 6E 6C 6F 61 64 50 64 66 2E 64 6F
3F 70 61 70 65 72 6E 6F 3D 30 39 30 35 30 30 32
30 33 33 5F 10 2B 68 74 74 70 3A 2F 2F 65 74 74
72 65 6E 64 73 2E 65 74 72 69 2E 72 65 2E 6B 72
2F 65 74 74 72 65 6E 64 73 2F 6D 61 69 6E 2E 64
6F 08 0B 53 00 00 00 00 00 00 01 01 00 00 00 00
00 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 81
알아볼 수 있게 표시하는 방법
- 이진값을 Hex 표현식으로 바꾸고 다시 plutil 명령으로 xml이나 json 포맷으로 변환
$ xattr -px com.apple.metadata:kMDItemWhereFroms 1.pdf | xxd -r -p | plutil -convert xml1 -o - - <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <array> <string>http://ettrends.etri.re.kr/ettrends/downloadPdf.do?paperno=0905002033</string> <string>http://ettrends.etri.re.kr/ettrends/main.do</string> </array> </plist> $ xattr -px com.apple.metadata:kMDItemWhereFroms 1.pdf | xxd -r -p | plutil -convert json -o - - ["http:\/\/ettrends.etri.re.kr\/ettrends\/downloadPdf.do?paperno=0905002033","http:\/\/ettrends.etri.re.kr\/ettrends\/main.do"]
명령
echo "
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<string>http://www.mysite.com/folder/1.pdf</string>
</array>
</plist>
" | plutil -convert binary1 -o - - | xxd -p -c10240
실행
$ echo " > <?xml version="1.0" encoding="UTF-8"?> > <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> -bash: !DOCTYPE: event not found > <plist version="1.0"> > <array> > <string>http://www.mysite.com/folder/1.pdf</string> > </array> > </plist> > " | plutil -convert binary1 -o - - | xxd -p -c10240 62706c6973743030a1015f1022687474703a2f2f7777772e6d79736974652e636f6d2f666f6c6465722f312e706466080a000000000000010100000000000000020000000000000000000000000000002f $ xattr -wx com.apple.metadata:kMDItemWhereFroms 62706c6973743030a1015f1022687474703a2f2f7777772e6d79736974652e636f6d2f666f6c6465722f312e706466080a000000000000010100000000000000020000000000000000000000000000002f 1.pdf
결과
$ xattr -px com.apple.metadata:kMDItemWhereFroms 1.pdf | xxd -r -p | plutil -convert xml1 -o - -
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<string>http://www.mysite.com/folder/1.pdf</string>
</array>
</plist>
>>>> 다운로드 경로 설정 (다른 파일 참조시)
$ sudo xattr -wx com.apple.metadata:kMDItemWhereFroms `xattr -px com.apple.metadata:kMDItemWhereFroms "원본.hwp" | xxd -r -p | plutil -convert binary1 -o - - | xxd -p -c10240` "사본.pdf"
>>>> 속성 제거하기
$ xattr -d com.apple.metadata:kMDItemWhereFroms 1.pdf
검색: Macintosh, 매킨토시, Mac, 맥, OS X, xattr, Extended attributes, 확장 속성, Where From, kMDItemWhereFroms,
'OS' 카테고리의 다른 글
Oh My ZSH! (0) | 2016.07.23 |
---|---|
Affinity Designer - 벡터 드로잉 도구 (0) | 2016.07.22 |
Affinity Photo - 래스터 이미지를 편집하는 비트맵 기반의 사진 편집기 (0) | 2016.07.22 |
윈도우에서 touch 명령을 대체하는 방법 (1) | 2016.07.16 |
man page 를 stdout 으로 표시하거나 파일로 저장하는 방법 (0) | 2016.05.16 |