상? OS X 데스크탑의 파일


82

언제 ls터미널에서 (사용하여 내 바탕 화면 ls ~/Desktop), I라는 이름의 파일을 참조하십시오 Icon?. 내가 알 수있는 한, 비어 있습니다 ( nano Icon?아무것도 표시하지 않음). 실제 데스크탑에 표시되지 않고 open Icon?Finder 경고가 표시됩니다.

이 항목은 Mac OS X에서 사용되며 열 수 없습니다

출력은 다음과 같습니다 mdls Icon?.

kMDItemContentType         = ""
kMDItemFSContentChangeDate = 2009-09-23 13:32:52 -0600
kMDItemFSCreationDate      = 2009-09-20 07:27:46 -0600
kMDItemFSCreatorCode       = "MACS"
kMDItemFSFinderFlags       = 16384
kMDItemFSHasCustomIcon     = 0
kMDItemFSInvisible         = 1
kMDItemFSIsExtensionHidden = 0
kMDItemFSIsStationery      = 0
kMDItemFSLabel             = 0
kMDItemFSName              = "Icon "
kMDItemFSNodeCount         = 0
kMDItemFSOwnerGroupID      = 20
kMDItemFSOwnerUserID       = 501
kMDItemFSSize              = 0
kMDItemFSTypeCode          = "icon"

누구나 이것이 무엇인지에 대한 아이디어가 있습니까?


6
진짜 질문은 : 운영 체제가 모든 디렉토리에서 이러한 망할 파일을 만들지 못하게하는 방법이 있습니까? Dropbox에 표시되는 것이 정말 귀찮습니다.
JeremyKun

1
@JeremyKun 2017 here 여기에 대한 답변을 알고 싶습니다.
escapecharacter

이러한 파일은 파일을 생성하는 불쾌한 소프트웨어가 없으면 자동으로 "모든 디렉토리에"생성되지 않습니다. 또한-그들은 당신을 귀찮게 할 수도 있지만 기능도 가지고 있습니다. 이것은 MacOS에서 "사용자 정의 사용자 아이콘"의 구현입니다. 사용자가 파일이나 디렉토리의 아이콘으로 사용하기 위해 자신이 좋아하는 이미지를 붙여 넣으려면 숨겨진 iCon? 파일. 삭제하면 사용자 정의 아이콘이 제거됩니다.
Motti Shneor

답변:


97

무엇입니까?

이 이름은 실제로는의 Icon\r와, \r캐리지 리턴되고 0x0D. 쉘 터미널에서 경로를 자동으로 완성시키는 경우, 산출 Icon^M, ^M\r.

Icon^MFinder에 사용자 정의 아이콘이있는 모든 디렉토리에 존재하는 파일입니다. 이미지를 왼쪽 상단 모서리의 아이콘에 붙여 넣어서 정보 가져 오기 대화 상자 에서 디렉토리 아이콘을 변경 하면 Icon^M파일이 생성됩니다.

볼륨 아이콘을 변경하면 숨겨진 .VolumeIcon.icns파일이 대신 만들어집니다 .

왜 보이지 않습니까?

hidden속성이 설정되어 있기 때문에 Finder에서 보이지 않습니다 .

$ ls -lO Icon^M 
-rw-r--r--@ 1 danielbeck  staff  hidden 0 24 Apr 23:29 Icon?

로 변경하십시오 chflags nohidden Icon^M.

데이터는 어디에 있습니까?

파일의 데이터 포크 (즉, 내용)가 비어있는 동안 (즉, 터미널에서 파일 크기가 0 바이트 인 경우) 실제 아이콘 데이터는 파일의 리소스 포크에 저장됩니다 .

$ ls -l@ Icon^M
    com.apple.ResourceFork  350895 

다음과 같이 리소스 포크를 파일에 복사 할 수 있습니다 (예 : 16 진 편집기에서 볼 수 있음).

$ cp Icon^M/..namedfork/rsrc Icondata

 어떻게 볼 수 있습니까?

이미지를 얻는 가장 쉬운 방법은 포함 된 폴더의 정보 입수 대화 상자 에서 아이콘을 클립 보드에 복사 한 다음 클립 보드에서 미리보기 ( Cmd-N) 로 새 이미지를 만드는 것 입니다. 그것은이다 icns기본적으로 다음 이미지입니다.

XnView 의 Mac OS 버전에 따라 JPEG 2000 형식이며 해당 프로그램에서 열 수 있습니다. JPEG 2000을 지원해야하는 다른 프로그램에서는 작동하지 않는 것 같습니다. 따라서이 형식 정보는 잘못된 것일 수 있습니다.



3
Apple은 실제로 리소스 포크에 데이터를 숨기는 일을 자주합니다. 깔끔하거나 오해의 소지가 있는지 판단 할 수 없습니다.
루카 사

2
일관성이 있습니다. 결국 아이콘 리소스 포크 내용입니다.
JdeBP

3
당신은 하나의 나무, 메뚜기의 나무를 그리워합니다. 볼륨 아이콘 파일을 넘어 전통적으로 MacOS에서는 최소한 아이콘이 리소스 포크 에있는 훌륭한 사례를 살펴보십시오 . 현대적이고 힙합이 되려고 노력하고 우리가 필요로하지 않는 리소스 포크-우리가 유닉스 인 경우 모던과 힙 /..namedfork/rsrc접미사를 대신 사용하도록 답을 수정해야 합니다. 경고 메시지를 생성하는 (-:
JdeBP

2
내 놀라운 심령 능력이 있음을 말해 모든 이들의 printfs는 시스템 로그로 이동합니다.
JdeBP 2016 년

10

Icon?디렉토리 내 파일은 해당 디렉토리에 대한 사용자 정의 아이콘 이미지가 포함되어 있습니다. 이미지 자체는 확장 파일 속성, 특히에 저장 com.apple.ResourceFork되므로 Icon?파일 길이가없는 것 같습니다.

를 사용하여 해당 데이터를 검색 $ xattr -p com.apple.ResourceFork Icon?하거나 확장 된 모든 속성을 볼 수 있습니다$ xattr -l Icon?

Snow Leopard에서는 적어도 시스템 아이콘에 대해 단계적으로 종료 된 것으로 보입니다 (~ / Desktop /의 경우 홈 디렉토리를 아이콘보기로 볼 때 해당 아이콘이 표시됨). 그러나 두 개의 사용자 정의 디렉토리 아이콘의 경우 내 시스템에 있지만 여전히 존재합니다.


"시스템 아이콘"은 Icon^M내가 아는 한 파일을 만든 적이 없습니다 . 이 특수 폴더의 이름을 사용자 정의 아이콘으로 바꾸십시오 ( ~/Applications어쨌든 기본적으로 존재하지 않기 때문에 가장 쉽습니다 ).
Daniel Beck

@ 다니엘 예프; OP에 데스크톱 폴더에 대한 사용자 정의 아이콘이 있다고 가정합니다.
NReilingh

5

무엇입니까?

폴더 아이콘의 이미지를 저장하는 파일입니다. 이미지를 폴더에 수동으로로드 한 경우에만이 이미지를 만들 수있었습니다. 기본적으로 시스템에 이러한 기능이 없습니다.

Icon ^ M 파일을 찾는 방법

노트:

이것은 .icns파일 확장자 와 다릅니다 .

오 탐지 한 후 사용 찾는 경우에 대해 편집증해야합니다 ctrl+ v ctrl+ m대신?

#!/bin/bash
# =============================================================================
# MAC OSX HIGH SIERRA 10.13.4 (17E199)
# Terminal: Version: 2.8.2 64-Bit (Intel): Yes
# Terminal Location: /Applications/Utilities/Terminal.app
# =============================================================================

echo 'Searching Documents for Icon files...'
find ~/Documents -type f -name 'Icon?' -print;

Icon ^ M 파일을 만드는 방법

  1. 파인더 열기
  2. 폴더를 마우스 오른쪽 버튼으로 클릭
  3. Option키보드에서 길게 누르기
  4. 검사기 표시를 선택하십시오.
  5. 이미지를 왼쪽 상단 폴더 아이콘으로 드래그하십시오.
  6. ls -lah해당 디렉토리에서 실행
    1. 넌 봐야 해:
      • -rw-r--r--@ 1 username staff 0B May 13 22:23 Icon?

Icon ^ M 파일을 제거하는 방법

어떤 이유로 든 제거해야하는 경우 ... 우연히 테스트 목적으로 말하십시오.

#!/bin/bash
# =============================================================================
# MAC OSX HIGH SIERRA 10.13.4 (17E199)
# Terminal: Version: 2.8.2 64-Bit (Intel): Yes
# Terminal Location: /Applications/Utilities/Terminal.app
# =============================================================================

echo 'Removing Icon files from Documents...'
find ~/Documents -type f -name 'Icon?' -print -delete;

다른 질문에 대한 내 게시물의 참조 :

Mac OS X에서 빈 폴더를 어떻게 삭제합니까?


1
허용 된 답변에 "삭제 방법"이 없기 때문에 +1입니다. 그리고 아닙니다. Windows에서 minGW의 bash를 통해 액세스 할 때 유용하지 않습니다.
gbarry
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.