วิธีหยุดสร้าง. DS_Store บน Mac [ปิด]


163

ฉันกำลังพัฒนาไซต์บน mac และทุกครั้งที่ฉันสร้างโฟลเดอร์ (หรือไฟล์ในโฟลเดอร์นั้น) DS_Store ถูกสร้างขึ้นในโฟลเดอร์นั้น

จะป้องกันการสร้างไฟล์. DS_Store ได้อย่างไร?


ไม่ชอบ :) ฉันควรใช้อะไรดีกว่า
iWizard

1
@CroiOS Terminal + VIM
Greg

มันเป็นความคิดเห็นที่ไม่มีทางเลือกจริง - ในทางทฤษฎีคุณสามารถใช้ Terminal เท่านั้นหรือเครื่องมืออื่น ๆ เช่นบรรณาธิการ (หรือฉันคิดว่า Path Finder เป็นไฟล์เบราว์เซอร์) แต่ในทางปฏิบัติคุณติดอยู่กับไฟล์เหล่านี้
mmmmmm

7
เพียงละเว้นไฟล์ในระบบควบคุมเวอร์ชันของคุณ
millimoose

4
คำถามนี้ดูเหมือนจะไม่ได้อยู่ในหัวข้อเพราะเป็นเรื่องเกี่ยวกับฮาร์ดแวร์และซอฟต์แวร์ของ Apple - แบบที่ดีที่สุดน่าจะเป็นถามที่แตกต่างกัน
Dan J

คำตอบ:


36

มันเป็นไปได้โดยใช้mach_inject ดูDeath to .DS_Store

ฉันพบว่าการเอาชนะHFSPlusPropertyStore :: FlushChanges ()พร้อมกับฟังก์ชั่นที่ไม่ได้ทำอะไรเลยทำให้การสร้างไฟล์. DS_Store บน Snow Leopard และ Lion ไม่ประสบความสำเร็จ

รหัสแหล่ง DeathToDSStore

หมายเหตุ:วันที่ 10.11 คุณไม่สามารถฉีดรหัสลงในแอพระบบ


โปรดให้คุณทุบตีฉันสามารถคัดลอกและวางลงในเปลือกของฉัน การแก้ปัญหานี้ต้องการการมีส่วนร่วมกับวรรณกรรมค่อนข้างน้อย
samthebest

4
คุณสามารถใช้DeathToDSStore.app
Parag Bafna

มีวิธีแก้ปัญหา 2019 หรือไม่? เนื่องจาก DeathToDSStore ดูเหมือนจะไม่ทำงานบน MacOS ล่าสุดอีกต่อไป ...
JKL

@JKL ฉันไม่ได้ตระหนักถึงวิธีการทำงานใด ๆ
Parag Bafna

44

โปรดติดตั้งhttp://asepsis.binaryage.com/จากนั้นรีบูตเครื่อง mac ของคุณ

ASEPSIS เปลี่ยนเส้นทางทั้งหมด. DS_Store บน mac ของคุณไปยัง /usr/local/.dscage

หลังจากนั้นคุณสามารถลบ .DS_Store ทั้งหมดซ้ำจาก mac ของคุณ

find ~ -name ".DS_Store" -delete
or
find <your path> -name ".DS_Store" -delete

คุณควรทำขั้นตอนซ้ำหลังจากการอัปเดตหลักของ Mac แต่ละครั้ง


1
หมายเหตุสำหรับ Mac OSX 10.10 คุณควรอัพเกรด Xcode Command Line Tools และหลังจากนั้นให้รันด้วยตนเองในเทอร์มินัลเช่นรูทหรือด้วย sudo คำสั่งต่อไปนี้ xcrun --find codesign ยอมรับข้อกำหนดและเงื่อนไขของสัญญาอนุญาตด้วยตนเองและคุณสามารถทำการติดตั้ง asepsis ต่อได้
myset

หลังจากการอัปเกรดแต่ละระบบต้องเรียกคืนเวอร์ชันล่าสุดอีกครั้ง
myset

1
"Asepsis ใช้ daemon ทั่วทั้งระบบ asepsisd ซึ่งมีวัตถุประสงค์เพื่อตรวจสอบการเปลี่ยนชื่อโฟลเดอร์ทั่วทั้งระบบ (หรือลบ) และทำมิรเรอร์การทำงานเหล่านั้นในโฟลเดอร์คำนำหน้า" นี่เขียนไว้ในหน้าของ Asepsis จำเป็นหรือไม่ที่จะต้องลบไฟล์. DS_ ซ้ำซ้ำทุกครั้ง
vanguard69

"กรุณาติดตั้ง asepsis" ได้โปรดแสดงคำสั่ง bash ให้ฉันเพื่อที่ฉันจะได้คัดลอกและวางมันลงในเชลล์ของฉันได้ไหม?
samthebest

3
ยังมีวิธีให้ Asepsis ทำงานภายใต้ El Capitan ฉันได้ทำเอกสารขั้นตอนที่นี่: pixelcog.com/blog/2016/disable-ds_store-in-el-capitan
mikegreiling

41

หมายเหตุ : "Asepsis ไม่อยู่ภายใต้การพัฒนาและสนับสนุนภายใต้ OS X 10.11 (El Capitan) อีกต่อไป"


นี่คือความคิดเห็นที่ครอบคลุมเกี่ยวกับตัวเลือกของคุณ Asepsis (โซลูชันที่สองที่กล่าวถึง) ดูเหมือนจะเป็นสิ่งที่คุณกำลังมองหามันจะกำหนดเส้นทางใหม่. DS_Store การสร้างแคชรวมเป็นหนึ่งเดียวแทนที่จะอยู่ในทุก ๆ โฟลเดอร์


6
ในกรณีที่การเชื่อมโยงไม่ดีตัวเลือกที่น่าจะเป็นไปได้มากที่สุดสองรายการที่ระบุไว้ในเว็บไซต์นั้นคือ Asepsis (เปลี่ยนเส้นทางไฟล์ที่สร้าง) และ DeathToDSStore (ป้องกันการสร้างไฟล์ปิดการใช้งานคุณสมบัติ Finder) ซึ่งทั้งสองวิธี ตัวเลือกอื่น ๆ จะจัดการกับไดรฟ์เครือข่ายและไดรฟ์ภายนอกซึ่งทั้งสองวิธีจะแก้ปัญหาบางส่วนเท่านั้น
ปราชญ์

1
@emmanuel: นี้ไม่รวมถึงชิ้นส่วนที่สำคัญ: ชื่อของโปรแกรมและคุณลักษณะเฉพาะที่จะให้การแก้ปัญหา
นาธาน Tuggy

23

เปิด Terminal ดำเนินการคำสั่งนี้:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

รีสตาร์ทคอมพิวเตอร์หรือออกจากระบบและกลับเข้าสู่บัญชีผู้ใช้

สำหรับข้อมูลเพิ่มเติม:

http://support.apple.com/kb/ht1629


44
ใช้ได้กับระบบไฟล์ของเครือข่ายเท่านั้น
David P. Caldwell

2

ใส่บรรทัดต่อไปนี้ลงในไฟล์ ".profile" ของคุณ

เปิดไฟล์. profile และคัดลอกบรรทัดนี้

find ~/ -name '.DS_Store' -delete

เมื่อคุณเปิดหน้าต่างเทอร์มินัลจะลบไฟล์. DS_Store ของคุณโดยอัตโนมัติ


9
ใช้สิ่งนี้ในการลงชื่อเข้าใช้ทำให้สิ่งต่าง ๆ ช้าลงฉันจึงสร้างนามแฝงนี้ขึ้นมา:alias nomore='find ./ -iname .DS_Store -delete'
BenjaminGolder

6
ว้าว. ช่างเป็นความคิดที่ดี ไม่. [/ ประชดประชัน] ลองนึกภาพว่ามีโฟลเดอร์จำนวนมากและไฟล์. DS_Store จำนวนมากและจินตนาการถึงไฟล์ทั้งหมดที่ตรงกับ. DS_Store ทุกครั้งที่เชลล์เริ่มทำงาน ฉันรู้ว่าคำถามนี้เก่า แต่ฉันคิดว่าควรเขียนว่านี่ไม่ใช่ความคิดที่ดี
thonixx

3
ดังนั้น [/ ประชดปิด] จะปิดการประชดของคุณหรือสิ้นสุดการประชดของคุณที่ทำให้ปิดอยู่หรือไม่
คอนเนอร์

นี่เป็นวิธีที่ยอดเยี่ยมในการฆ่าเวลา (มีประสิทธิผล) ในขณะที่ mac ค้นหาไฟล์ K หลายร้อยไฟล์บนดิสก์
javadba

-7

ไฟล์นี้เริ่มปรากฏเมื่อคุณเลือกระบบจะแสดงไฟล์ที่ซ่อนอยู่ให้คุณ: $ ค่าเริ่มต้นเขียน com.apple.finder AppleShowAllFiles TRUE หากคุณเรียกใช้คำสั่งนี้จะหายไป $ ค่าเริ่มต้นเขียน com.apple.finder AppleShowAllFiles FALSE ใช้เทอร์มินัล


2
คำถามถามถึงวิธีการหยุดสร้างไฟล์ไม่ใช่วิธีซ่อนไฟล์
Steve Buzonas

-7

ฟังก์ชั่น

find ~/ -name '.DS_Store' -delete

ลบไฟล์. DS store ชั่วคราว แต่ไม่แน่ใจว่าไฟล์นั้นจะกลับมาบน Mac หรือไม่ นอกจากนี้ฉันยังสังเกตเห็นบางสิ่งที่แปลกประหลาดเริ่ม "DS_Store" มาที่ Mac หลังจากติดตั้ง 'ATOM' ดังนั้นโปรดตรวจสอบให้แน่ใจว่าได้สแกนซอฟต์แวร์บุคคลที่สามของคุณอย่างถูกต้องก่อนทำการติดตั้ง ดีที่สุด


5
ไฟล์. DS_Store ถูกสร้างขึ้นโดยตัวค้นหา OSX
Fran Marzoa

1
คำถามถามถึงวิธีการหยุดสร้างไฟล์ คำตอบนี้เป็นวิธีการลบพวกเขา นอกจากATOMนี้ไม่ได้สร้างไฟล์ Finderแอพลิเคชันสร้างขึ้นมาเมื่อเข้าสู่โฟลเดอร์ไปยังตำแหน่งไอคอนร้านค้ามุมมองที่เลือกสำหรับโฟลเดอร์ภาพพื้นหลัง ฯลฯ DS_Store, DS เป็นเดสก์ท็บริการ
Steve Buzonas

-12

หากคุณต้องการให้.DS_Storeไฟล์มองไม่เห็น (ยังคงมีอยู่ แต่มองไม่เห็น) ให้เรียกใช้คำสั่งต่อไปนี้ในหน้าต่าง "Terminal":

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

นี่จะเป็นการตั้งค่าเริ่มต้นของระบบเพื่อหยุดแสดงไฟล์เหล่านี้บนเดสก์ท็อปของคุณและที่อื่น ๆ มันจะรีสตาร์ท Finder เพื่อให้การเปลี่ยนแปลงนี้ปรากฏ (โดยเฉพาะบนเดสก์ท็อปของคุณ)


5
นั่นไม่ใช่การตอบคำถามที่ถูกถาม
ไม่มีใคร

การซ่อนการแสดงไฟล์ที่ซ่อนไม่ได้เป็นการลบการสร้างไฟล์. DS_Store ซึ่งเป็นคำถามที่ถูกถาม นี่คือคำตอบที่น่ากลัว
MattBoothDev

คำถามถามถึงวิธีการหยุดสร้างไฟล์ วิธีนี้จะซ่อน (และไฟล์อื่น ๆ ) เฉพาะใน Finder
Steve Buzonas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.