Làm cách nào tôi có thể sửa đổi danh sách Ứng dụng trong 'Mở bằng'?


41

Gần đây tôi đã đi mở một tệp âm thanh và muốn mở nó trong trình chỉnh sửa thay vì trình phát. Tôi nhấp chuột phải vào nó, di chuột qua 'Mở bằng ...' và được đáp ứng với một danh sách rất khó coi.

Danh sách các ứng dụng âm thanh được hỗ trợ

Tôi đã thấy một vấn đề trong quá khứ nơi các ứng dụng sẽ có các phiên bản trước bị kẹt trong /Applicationsthư mục với số phiên bản của chúng được nối thêm, nhưng đó không phải là trường hợp ở đây. Mặc dù có sự trùng lặp trong danh sách này, nhưng không có ứng dụng nào được sao chép ở /Applicationsbất kỳ nơi nào khác mà tôi có thể tìm thấy trên hệ thống của mình.

Điều gì khiến danh sách này trở nên chứa đầy các bản sao và làm cách nào tôi có thể xóa chúng và đảm bảo chỉ có phiên bản mới nhất (và chức năng) là danh sách?


Xây dựng lại cơ sở dữ liệu Launch Services (mà lệnh đó thực hiện) sẽ khắc phục điều này. Có bất kỳ thông báo lỗi được in khi bạn chạy nó?
kẻ cướp

Câu trả lời:


45

Các ứng dụng không phải sống /Applications. Nếu bạn có một bản sao của hệ thống của bạn được gắn kết, điều đó có thể chiếm một số bản sao, nhưng chắc chắn không phải là những gì bạn đang quan sát. Danh sách các chương trình dành cho Mở với chương trình được duy trì trong cơ sở dữ liệu Dịch vụ khởi chạy . Nếu danh sách chứa nhiều bản sao như của bạn, cơ sở dữ liệu có vẻ như cần được xây dựng lại.

Macworld Gợi ý cung cấp một gợi ý về cách bạn có thể khắc phục điều này:

Các lsregisterlệnh, tìm thấy tại System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister, có thể nói cơ sở dữ liệu để thiết lập lại. Macworld khuyên bạn nên chạy lệnh như vậy:/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user

Lưu ý rằng các tiện ích như Onyx hoặc Cocktail cũng có thể thiết lập lại cơ sở dữ liệu này cho bạn. Xin lưu ý rằng Finder sẽ không đọc lại cơ sở dữ liệu mới, do đó bạn sẽ phải đăng xuất và đăng nhập lại hoặc phát hành killall Findernếu bạn không chỉ giết nó cho bất kỳ người dùng nào trên máy Mac của mình để tránh đăng xuất và đăng nhập.


1
Điều này sẽ giúp nhân đôi và đã làm việc cho tôi nhiều lần, vì vậy +1. Bạn có bất cứ điều gì để giúp OP với phần thứ hai của câu hỏi: làm thế nào để EDIT danh sách này?
Redandwhite

1
@Redandwhite Thật ra, anh ấy đã trả lời câu hỏi của tôi đến mức mà tôi muốn nói. Bằng cách chỉnh sửa nó, tôi thực sự có nghĩa là chỉ cần xóa các bản sao và lsregister sẽ làm điều đó cho tôi. Nếu bạn muốn chỉnh sửa nó hoàn toàn, hãy hỏi nó như câu hỏi của riêng bạn . Phần tốt nhất của điều đó là, bạn sẽ nhận được đại diện upvote cho chính mình theo cách đó :).
Jason Salaz

Chà, anh ấy đã trả lời câu hỏi của tôi, nhưng thật không may, điều đó không giải quyết được vấn đề . Danh sách vẫn giống hệt nhau sau khi chạy lệnh được đưa ra trong câu trả lời. Hình ảnh được liên kết trong nhận xét này cho thấy tôi khá tự tin rằng chỉ có một bản sao của gói ứng dụng Spotify trên hệ thống của tôi mặc dù số lượng hiển thị trong danh sách.
Jason Salaz

2
Tôi lấy lại Quá trình này dường như chỉ mất một chút thời gian để chạy, nhưng tôi đã xem 'Mở bằng ...' cách đây không 2 phút. Danh sách sạch sẽ trở lại. Yay!
Jason Salaz

Yay! Vui mừng nó đã làm việc cho bạn. Tôi đã đào và tôi đã không đưa ra một câu trả lời tốt hơn, vì vậy tôi rất vui vì điều này đã làm việc.
Daniel

7

Khi bạn đã kiểm tra dưới ánh đèn sân khấu để chắc chắn rằng bạn không thực sự có ổ đĩa sao lưu hoặc ổ đĩa khác với các bản sao ứng dụng trùng lặp (trong trường hợp Finder sẽ hiển thị cho bạn tất cả các ứng dụng mà nó biết về nó có thể mở tệp), hãy thử chạy một lệnh để xây dựng lại cơ sở dữ liệu dịch vụ khởi chạy:

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user

Sau đó đăng xuất và đăng nhập lại. Điều này sẽ xây dựng lại cơ sở dữ liệu Launch Services cho OS X, loại bỏ tất cả các mục trùng lặp.


Tuyệt quá! Vui mừng nó đã làm việc cho bạn.
daviesgeek

6

CleanOpenWith là một ứng dụng tôi đã tạo để xóa menu Open With Thể.

CleanOpenWith là mã nguồn mở và miễn phí. Ứng dụng tự động hóa các bước sau :

  1. Mở Terminal: Ứng dụng / Tiện ích / Terminal.app
  2. Nhập lệnh sau:

    /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user
    
  3. Đợi lệnh đó hoàn thành

  4. Nếu không có lỗi thì tiến hành bước cuối cùng, khởi động lại Finder
  5. Khởi động lại Finder không yêu cầu bạn khởi động lại máy Mac. Chỉ cần nhấn Control+ Optiontrong khi nhấp vào biểu tượng Finder trong Dock, chọn Khởi chạy lại và bạn đã được đặt!

1

Tôi vừa mới cắn nó trên một bản cài đặt Mountain Lion mới, khá sạch sẽ, nơi tôi có một vài phiên bản ứng dụng và tôi nghĩ rằng tôi có một ý tưởng khả thi về cách các bản sao xuất hiện trong trường hợp của tôi.

Tôi chạy Air này ở chế độ vỏ sò và có thể đã kéo nó trong khi nó đang ngủ và cơ sở dữ liệu dịch vụ khởi chạy không dọn sạch các ứng dụng được gắn trên ổ đĩa ngoài được kết nối với màn hình chiếu phim của tôi.

Tôi có ổ đĩa 3 TB với một số cài đặt Lion và Mountain Lion có thể khởi động, tương ứng chính xác với số lượng ứng dụng của hệ thống và bên thứ ba mà tôi dự kiến ​​sẽ đăng ký để mở tệp jpeg:

Mở với...

Cũng giống như các câu trả lời khác - buộc lsregister giết cơ sở dữ liệu và kick Finder đã vá tôi trong vòng chưa đầy 20 giây

/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain user -domain local -domain system
killall Finder

Đây là một chủ đề cũ, nhưng tôi gặp vấn đề tương tự. Chỉ cần thêm các thư mục ứng dụng của ổ đĩa ngoài của bạn vào danh sách loại trừ ánh sáng: superuser.com/a
4329054/82434

@ emb1995 Vấn đề này xảy ra ngay cả khi bạn chỉ có một Ổ đĩa do lỗi trong cách cửa hàng Ứng dụng tải xuống các bản cập nhật. Tôi không có một lời giải thích tốt tại sao Chrome và các tệp không phải MAS khác bị trùng lặp, vì vậy có lẽ có nhiều hơn một lỗi hoặc tương tác khó chịu khi nó bắt đầu làm hỏng mọi thứ trong cơ sở dữ liệu và thiệt hại lan rộng.
bmike

Vâng. Tôi biết về lỗi này, nhưng có vẻ như mọi thứ đều hoạt động như dự định của bạn, thật bất tiện cho những người như chúng tôi với nhiều cài đặt. lsregisterThỉnh thoảng tôi có thể tìm cơ sở dữ liệu và các mã liên quan khác, nhưng có lẽ vấn đề này đã được khắc phục trong Mavericks. Tôi đã không gặp vấn đề đó với GM hoặc DP. Chưa cài đặt Bản phát hành công khai. (lẻ ... tôi không thể đề cập đến bạn trong bình luận của tôi)
evan.bovie

0

Tôi đã gặp phải vấn đề khi có các bản sao lưu ứng dụng của mình trên một ổ đĩa ngoài. Nếu tôi có các ổ đĩa được lập chỉ mục hoặc khởi chạy ứng dụng từ các trình điều khiển đó, thì chúng sẽ hiển thị trong danh sách.


Có, tôi có một đĩa sao lưu Timemachine được kết nối. Làm thế nào để loại trừ những Ứng dụng cũ khỏi Menu?
Ivanov

2
@CDK, Điều này nghe giống như một nhận xét hơn là một câu trả lời.
HairOfTheDog

0

Tôi biết đây là một chủ đề cũ, nhưng đối với tôi, những gì đã làm rõ điều này sẽ là "Force Quit" và sau đó khởi chạy lại Finder.

Sự cố xảy ra trên iMac 3 ngày tuổi hoàn toàn cập nhật.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.