.DS_Store가없는 Mac에서 폴더 압축하기


62

어쨌든 Mac에서 폴더를 압축 할 때 .DS_Store를 제거 할 수 있습니까?

나는 Mac에서 일하고 클라이언트에게 zip 형식으로 작업을 보내지 만, 항상 그 안의 .DS_Store 폴더에 의문을 갖습니다. Windows에서 폴더를 연 다음 .DS_Store를 삭제하고 압축하면 피할 수없는 것처럼 보입니다. 그것은 상당히 번거 롭습니다.

손쉬운 해결 방법이 있습니까?

답변:


105

터미널로 뛰어 내리지 않는 편이 좋다면, 이것은 꽤 쉽습니다. 현재 /Users/username$ HOME 디렉토리에 있고 모든 .DS_Store 파일을 지우고 무시하려는 foo라는 하위 디렉토리가있는 경우 다음을 수행하십시오.

zip -r foo.zip foo -x "*.DS_Store"

이를 해석하기 위해 다음 매개 변수 / 인수를 사용하여 zip 실행 파일을 실행합니다.

  • -r 재귀 적으로 우리가 압축하고자하는 대상 아래에있는 모든 디렉토리를 포함합니다.
  • foo.zip 우리가 만들고있는 zip 아카이브의 이름입니다.
  • foo 우리가 압축하려고하는 대상 디렉토리입니다.
  • -x "*.DS_Store" 경로가 ".DS_Store"문자열로 끝나는 모든 파일을 제외합니다.

어리석은 타사 응용 프로그램이 필요하지 않으며 .DS_Store 파일을 전혀 휴지통에 넣지 않아도됩니다. OSX / Darwin에 내장 된 모든 유닉스 도구의 장점만을 사용하십시오.


1
이것은 완벽한 감사입니다. 관심이 없다면 다중 경로 엔딩을 어떻게 제외 할 수 있습니까? zip -r foo.zip foo -x "* .DS_Store, * .svn"과 같은 것?
danixd 10:12 AM

5
-x 인수를 두 번 사용하십시오. zip -r foo.zip foo -x *.DS_Store -x *.svn*
whaley 10:12:14

OSX에서 사용자 정의 폴더 아이콘 용으로 생성 한 아이콘 - 파일을 어떻게 제외합니까? 파일 이름의 끝에는 개행 문자가 있습니다.
Daniel Beck

나는 그 파일 이름이 어떻게 생겼는지 전혀 모른다. 그래서 나는 진짜 지침을 줄 수 없다.
whaley

1
@Daniel Beck - CleanArchiver를 계속 사용하고 다른 사람의 질문에 대한 의견 섹션을 도용하지 않고 원래의 포스터에서 분명히 작동 할 때 솔루션 열등이라고 부르는 대답을 수락하지 않았습니까? 놀랍게도 귀하의 질문에 대한 대답은 충분 -x 'Icon?'합니다. "?" 파일 globbing 패턴의 문자는 "하나의 와일드 카드 문자 일치"를 의미하므로 "?"문자와 상관없이 일치합니다. 정말로. -x 인수를 추가로 추가하여 모든 종류의 특수 파일을 제외 할 수 있습니다. zip매우 유연합니다. 이 제 3 자 유틸리티가 실제로 장면 뒤에서 무엇을 사용한다고 가정합니까?
whaley

5

폴더를 입력으로 받아들이고 어떤 내용없이 폴더 내용의 zip 파일을 생성하는 자동화 프로그램을 만들 수 있습니다.

이 응용 프로그램을 / Users / you / Applications에 저장 한 다음 파인더 도구 모음으로 끌어 놓습니다. 그런 다음 모든 파인더 창에서 폴더를 응용 프로그램으로 드래그 할 수 있습니다.

자동화 응용 프로그램 만들기

' 선택한 찾기 항목 가져 오기 '단계를 추가하십시오 . 또한 ' 인수 입력 '옵션이 ' 인수 ' 설정된 ' 실행 셸 스크립트 '단계를 추가하십시오 .

워크 플로우 단계 추가

스크립트 :

name=("$@")
cd "$name"
zipFileName=`basename "$name"`
zip "${zipFileName}.zip" -r ./* \
    -x */.DS_Store \
    -x */.git \
    -x */.svn \
    -x */.idea \
    -X */__MACOSX
mv "${zipFileName}.zip" ../

폴더를 입력으로 받아들이고 폴더 이름과 함께 zip 파일을 만듭니다.


그 위대한! 내가 어떻게 여러 파일을 드래그 할 수있는 그것을 수정할 수 있습니다, 출력 이름은 dirname을 포함해야합니다;
괴롭히기

2
@unbreak 나는 몰라. 나는 더 이상 맥을 소유하지 않는다 ;-)
Michiel Roos

3

나는 기본적으로 그것을 할 수있는 방법이 있다고 생각하지 않지만, 내가 원하는 것을 성취 할 수있는 두 가지 방법이있다.

먼저 FolderWasher 라는 무료 앱을 발견했습니다 . 응용 프로그램에서 폴더를 버리면 .DS_Store 파일이 제거되고 압축됩니다.

또는 (타사 소프트웨어보다) 잠재적으로 Automator를 사용하여 생성 후 아카이브를 정리할 수 있습니다. 이미 실제로이 작업이 만들어졌습니다 . 추가 단계가 하나뿐이므로 작업을 Finder로 드래그하여 쉽게 찾을 수 있습니다.


3

이미 zip 아카이브를 작성했거나 (.DS_Store 우편 zip 작성을 제거하는 간단한 방법을 원한다면) zip 아카이브의 모든 경로에서 모든 .DS_Store 파일을 제거합니다.

zip -d archive.zip "*/*.DS_Store"

Whaley의 답변 은 별칭을 지정하고 잊어 버릴 수 있으므로 여전히 가장 좋습니다. 필자의 경우 Archive Utility에서 zip 파일을 생성 한 다음 삭제해야한다는 사실을 깨달았습니다.


2

터미널 (/Applications/Utilies/Terminal.app)을 열고 숨김 파일을 표시하려면 다음 명령을 실행하십시오.

defaults write com.apple.finder AppleShowAllFiles TRUE && killall Finder

숨겨진 파일을 숨기려면 다음을 실행하십시오.

defaults write com.apple.finder AppleShowAllFiles FALSE && killall Finder

디렉토리에 아무런 해를 끼치 지 않고 다른 파일과 마찬가지로 .DS_Store 파일을 삭제할 수 있습니다. DS_Store (Desktop Services Store)는 위키피디아에서 말한 것처럼 아이콘 위치 나 배경 이미지 선택과 같은 폴더의 사용자 지정 속성을 저장하기 위해 Apple Inc.의 Mac OS X 운영 체제에서 만든 숨김 파일입니다. "



2

터미널에서 이것을 실행하면 폴더를 만들 때 자동 생성이 중지되며, 선택하면 다시 사용할 수 있습니다.

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

그런 다음 @Penang 예제 (위)를 사용하여 파일이 더 이상 생성되지 않는지 확인할 수 있습니다. 나는 zip 파일을 업로드해야했고 모든 폴더에 그 파일이 있었고 이것이 나에게 도움이되었다.


0

그들이 무엇인지에 대한 설명이 있으며, 모든 장소 의 어도비 도움말 사이트 에서 삭제하는 방법이 있습니다.

그들은 폴더 위치, 색상, 폴더 배경 및 스크롤 위치와 같은 폴더 구성을 저장하는 데 사용되는 숨겨진 파일입니다. 불행히도 애플은 영구적으로 생성을 막을 수있는 방법이 없을 것입니다. 사과는 문제를 일으킬 수 있음을 인정하지만 일부 사용자.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.