2013-08-02 31 views
141

Tôi đang phát triển các trang web trên mac và mỗi lần tôi tạo một số thư mục (hoặc tệp trong thư mục đó) .DS_Store được tạo trong thư mục đó.Cách dừng tạo .DS_Store trên máy Mac?

Cách ngăn tạo tệp .DS_Store?

+0

Không thích :) Tôi nên sử dụng điều gì hơn? – CroiOS

+1

@CroiOS Terminal + VIM – Greg

+0

Đó là một nhận xét là không có lựa chọn thay thế thực - theo lý thuyết bạn chỉ có thể sử dụng Thiết bị đầu cuối hoặc các công cụ khác, ví dụ: biên tập viên (hoặc tôi nghĩ Path Finder là một trình duyệt tập tin) nhưng trong thực tế bạn đang mắc kẹt với những tập tin này – Mark

Trả lời

35

Có thể bằng cách sử dụng mach_inject. Hãy nhìn vào Death to .DS_Store

tôi thấy rằng trọng HFSPlusPropertyStore :: FlushChanges() với một chức năng mà chỉ đơn giản không làm gì cả, ngăn chặn thành công việc tạo ra các tập tin .DS_Store trên cả Snow Leopard và Lion.

DeathToDSStore source code

LƯU Ý: On 10.11 bạn không thể tiêm mã vào ứng dụng hệ thống.

+0

Xin bạn có thể cung cấp một số bash tôi có thể sao chép và dán vào vỏ của tôi. Giải pháp này đòi hỏi một chút tương tác với văn học. – samthebest

+3

Bạn có thể sử dụng [DeathToDSStore.app] (http://www.aorensoftware.com/Downloads/Files/DeathToDSStore.zip) –

39

LƯU Ý: "Asepsis không còn được phát triển hoạt động và được hỗ trợ theo OS X 10.11 (El Capitan) trở lên".


Đây là comprehensive review tùy chọn của bạn. Asepsis (giải pháp thứ hai được đề cập) có vẻ là những gì bạn đang tìm kiếm, nó lại định tuyến .DS_Store tạo một bộ nhớ cache hợp nhất thay vì được đặt trên mỗi thư mục.

+4

Trong trường hợp liên kết bị hỏng, hai tùy chọn có khả năng nhất được liệt kê trên trang đó là Asepsis (chuyển hướng tệp đã tạo) và DeathToDSStore (ngăn việc tạo tệp, vô hiệu hóa một số tính năng của Trình tìm kiếm), cả hai đều được mô tả trong câu trả lời trên trang này. Các tùy chọn khác đối phó với ổ đĩa mạng và ổ đĩa ngoài - cả hai đều chỉ giải quyết một phần vấn đề. – sage

+1

@emmanuel: Điều này * không * bao gồm các phần thiết yếu: tên chương trình và tính năng cụ thể mà nó cung cấp để giải quyết vấn đề. –

35

Vui lòng cài đặt http://asepsis.binaryage.com/ và sau đó khởi động lại máy Mac của bạn.

vô trùng chuyển hướng tất cả .DS_Store trên mac của bạn để /usr/local/.dscage

Sau đó, Bạn có thể xóa một cách đệ quy tất cả .DS_Store từ mac của bạn.

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

Bạn nên lặp lại quy trình sau mỗi lần cập nhật chính của Mac.

+1

Lưu ý cho Mac OSX 10.10 bạn nên nâng cấp Xcode Command Line Tools và sau đó chạy thủ công trong terminal như root hoặc với sudo lệnh sau xcrun --find codesign. Tự chấp nhận thời hạn và thỏa thuận cấp phép và bạn có thể tiếp tục cài đặt asepsis – myset

+0

Sau mỗi lần nâng cấp hệ thống, cần khôi phục phiên bản mới nhất. – myset

+0

"Asepsis thực hiện một daemon trên toàn hệ thống asepsisd có mục đích là giám sát các thư mục toàn hệ thống đổi tên (hoặc xóa) và phản chiếu các hoạt động đó trong thư mục tiền tố" Điều này được viết trên trang của Asepsis '. Có thực sự cần phải đệ quy xóa các tệp .DS_store không? – vanguard69

15

Thiết bị đầu cuối mở. Thực hiện lệnh này:

defaults write com.apple.desktopservices DSDontWriteNetworkStores true 

Hoặc khởi động lại máy tính hoặc đăng xuất và đăng nhập lại vào tài khoản người dùng.

để biết thêm thông tin:

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

+30

chỉ áp dụng cho hệ thống tệp mạng –

4

Đặt sau dòng vào ".profile" tập tin của bạn.

Mở file .profile và copy dòng này

find ~/ -name '.DS_Store' -delete 

Khi bạn mở cửa sổ terminal nó sẽ tự động xóa tập tin .DS_Store cho bạn.

+7

chạy điều này khi đăng nhập bị chậm lại, vì vậy tôi vừa tạo bí danh này: 'alias nomore = 'find./ -ame .DS_Store -delete'' – BenjaminGolder

+3

Wow. Thật la một y tưởng hay. Không phải. [/ irony off] Hãy tưởng tượng có nhiều thư mục và nhiều tệp .DS_Store và hãy tưởng tượng xem tất cả các tệp phù hợp với .DS_Store mỗi khi trình bao khởi động. Tôi biết câu hỏi này là cũ nhưng tôi nghĩ rằng nó nên được viết rằng đây không phải là một ý tưởng tốt. – thonixx

-6

tập tin này bắt đầu xuất hiện khi bạn chọn hệ thống hiển thị cho bạn những file ẩn: $ defaults write AppleShowAllFiles com.apple.finder TRUE Nếu bạn chạy này disapear lệnh $ defaults write com.apple.AppleShowAllFiles công cụ tìm FALSE Sử dụng thiết bị đầu cuối

+2

Câu hỏi đặt ra làm thế nào để ngăn chặn các tập tin được tạo ra, không phải làm thế nào để ẩn chúng. –

-5

chức năng

find ~/ -name '.DS_Store' -delete 

, loại bỏ các tập tin lưu trữ .DS tạm thời. Nhưng không chắc chắn, liệu các tập tin sẽ trở lại trên máy Mac. Ngoài ra tôi nhận thấy một cái gì đó đặc biệt, "DS_Store" bắt đầu đến Mac sau khi cài đặt 'ATOM'. Vì vậy, các bạn hãy đảm bảo quét chính xác phần mềm của bên thứ ba của bạn trước khi cài đặt chúng. nhất

+4

.DS_Store tệp được tạo bởi OSX Finder –

+0

Câu hỏi sẽ hỏi cách ngăn tệp được tạo. Câu trả lời này là cách xóa chúng. Ngoài ra, 'ATOM' không tạo tệp. Ứng dụng 'Finder' tạo chúng khi truy cập một thư mục để lưu trữ các vị trí biểu tượng, khung nhìn được chọn cho thư mục, hình nền, vv' DS_Store', DS là Dịch vụ Máy tính để bàn. –

-8

Nếu bạn muốn .DS_Store file để trở thành vô hình (họ vẫn còn tồn tại nhưng không thể nhìn thấy) sau đó chạy lệnh sau trong cửa sổ "Terminal":

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

này sẽ thiết lập hệ thống mặc định để ngừng hiển thị các tệp này trên Màn hình của bạn và ở nơi khác. Nó cũng sẽ khởi động lại Finder để thực hiện thay đổi này (đặc biệt là trên Desktop của bạn).

+3

Điều đó không trả lời câu hỏi đã được hỏi. –

+0

Ẩn hiển thị các tệp ẩn không loại bỏ việc tạo tệp .DS_Store, đó là câu hỏi đã được hỏi. Đây là một câu trả lời khủng khiếp. – MattBoothDev

+0

Câu hỏi sẽ hỏi cách ngăn chặn các tệp được tạo. Giải pháp này ẩn chúng (và các tệp khác) chỉ trong Finder. –

Các vấn đề liên quan