"Open with" in Finder.app gives duplicate entries [duplicate]

I recently went to open an audio file, and wanted to open it in an editor instead of a player. I right-clicked it, hovered over 'Open With...' and was met with a very unsightly list.

List of Supported Audio Apps

I have seen a problem in the past where apps will have previous versions stuck in the /Applications folder with their version number appended, but that is not the case here. Despite the duplicity in this list, no app is duplicated in /Applications nor anywhere else I can find on my system.

What causes this list to become filled with duplicates, and how can I remove them and ensure only the latest (and functional) version is list?


Solution 1:

Applications don't have to live in /Applications. If you have a clone of your system mounted, that can account for some duplicates, but certainly not what you are observing. The list of programs for Open with… is maintained in the Launch Services database. If the list contains many duplicates as yours does, the database looks like it needs rebuilding.

Macworld Hints offers a suggestion as to how you can fix this:

The lsregister command, found at System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister, can tell the database to reset. Macworld recommends running the command thusly: /System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -kill -r -domain local -domain system -domain user

Note that utilities like Onyx or Cocktail can also reset this database for you. Do note that Finder won't re-read the new database so you will either have to log out and in again or issue a killall Finder if you don't mind just killing it for any users on your Mac to avoid a log out and in.

Solution 2:

Once you have checked in spotlight to be sure you don't actually have a backup drive or another volume with duplicate copies of the apps (in which case Finder is showing you all the apps that it knows about that can open the file), try running a command to rebuild the launch services database:

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

Then log out, and log back in again. This should rebuild the Launch Services database for OS X, removing all duplicate entries.

Solution 3:

CleanOpenWith is an application I created to clean the Open With… menu.

CleanOpenWith is open source and free. The application automates these steps:

  1. Open Terminal: Applications / Utilities / Terminal.app
  2. Type in the following command :

    /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user
    
  3. Wait for that command to complete

  4. If no error then proceed to the last step, restarting Finder
  5. Restarting Finder does not require you to reboot your Mac. Simply press Control + Option while clicking on the Finder icon in the Dock, select Relaunch and you are set!

Solution 4:

I just had this bite me on a fairly clean, new Mountain Lion install where I had several versions of apps and I think I have a workable idea how the duplicates came about in my case.

I run this Air in clamshell mode and probably pulled it while it was asleep and the launch services database didn't clean up for the apps that were mounted on my external drive connected to my cinema display.

I have a 3 TB drive with several bootable Lion and Mountain Lion installs which correspond exactly for the number of system and third-party apps I have that would be expected to register to open a jpeg file:

Open with...

Just as with the other answers - forcing lsregister to kill the database and kicking Finder patched me up in less than 20 seconds

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

Solution 5:

I've run into the issue where there are backups of my apps on an external drive. If I have those drives indexed or launched apps from those drivers, then they show up in the list.