File associations usually are made in the desktop environment, but how to get a list of applications associated with a file using command line?
Something like:
$ getassoc foo.pdf <CR>
$ acroread, okular
Does not need to be a command, can a cat
+ grep
on any Gnome file
I'm using Gnome 2.28.2.
Best Answer
There really isn't a centralized resource that you can just "query" to get at this information. Rather it's maintained in a couple of text files that you can either manually parse if you know where to look or you can use the tool
xdg-mime
to construct the relationships.Example
Say I have a PNG file on disk. I can find out its MIME type like this.
I can then query
xdg-mime
asking it what the association is for this particular MIME type.Looking through the
mimeinfo.cache
on my system I can find out a bit more about associations for a given MIME type using the following command:The desktop definitions in the
mimeinfo.cache
file are stored here:And it contains the name of the executables you're asking about:
Often times if I just want to launch something, I'll use the tool
xdg-open <file|URL>
to open a file rather than go and launch the app first, and then open the file.References