Forcer l'extension de fichier à s'ouvrir avec une application spécifique (extensions comme .exe, .jpg, .mp4…)

13

J'ai déjà lu la question sur la création de fichiers .desktop à utiliser dans l'onglet "Ouvrir avec une autre application" mais ce n'est pas ce que je veux, je veux pouvoir cliquer sur le fichier dans Dash ou dans Nautilus et pouvoir ouvrir avec l'application spécifiée.

Par exemple, j'ai ce cas en ce moment:

Lorsque je clique sur un fichier EXE , il n'est pas exécuté par Wine, mais j'obtiens à la place ce qui suit:

entrez la description de l'image ici

Si j'essaie de chercher Wine dans l' option de menu contextuel Ouvrir avec , il est là. Je suis en train de l'exécuter à partir de là la première fois, mais les fois suivantes, Wine n'apparaît pas sélectionné dans le menu contextuel principal:

entrez la description de l'image ici

Je suis ensuite allé dans Propriétés dans l' onglet Ouvrir avec pour rechercher Wine. Ce n'était pas dans les applications par défaut ni dans celles recommandées lorsque j'ai cliqué et recherché sur Afficher d'autres applications

entrez la description de l'image ici

Cela ne se limite pas aux extensions EXE. Cela s'est également produit avec des fichiers MKV, MP4, JPG, PNG, MP3 et même SVG et CSS. Donc, au lieu d'essayer de trouver un moyen de le résoudre pour un, je veux un moyen qui peut être fait pour tout type d'extension qui peut:

  • Faire de l'application la valeur par défaut de cette extension
  • Apparaître dans le menu contextuel de Nautilus lorsque je clique avec le bouton droit sur le fichier
  • Apparaît dans l'onglet "Ouvrir avec" de la fenêtre Propriétés du fichier
  • Exécute correctement l'application spécifiée lorsque je clique sur le fichier avec Dash

Cela peut sembler logique pour une application d'exécuter le fichier, mais cela ne fonctionne pas toujours comme ça. Donc, pour les cas où cela ne fonctionne pas, comment y remédier. Une réinitialisation de l'extension ?, Une mise à jour des fichiers pouvant ouvrir ladite extension ?, un ajout de l'application via une ligne de commande ou un outil GUI?

Luis Alvarado
la source
Jetez un œil à askubuntu.com/a/189284/41499 il utilise Ubuntu Tweak
Gerhard Burger
Donnez-moi un moment pour le tester. Bien que je cherchais un moyen qui n'ait pas besoin d'installer un PPA. Quelque chose par exemple qui était déjà DANS Ubuntu.
Luis Alvarado
Pouvez-vous l'ajouter comme réponse, au moins jusqu'à ce qu'une option plus "Ubuntu-ish" arrive. Cela change l'application pour l'extension, mais j'ai un cas où il n'y a pas Internet.
Luis Alvarado
Je me sens mal de le copier, ou devrais-je simplement copier mon commentaire dans une réponse? Ce serait bien de voir ce que fait réellement Ubuntu Tweak, cela crée des fichiers de bureau supplémentaires, mais je ne sais pas si cela fait quelque chose de plus ...
Gerhard Burger
Trouvé une meilleure option, plus "Ubuntu-ish";)
Gerhard Burger

Réponses:

16

Vous pouvez utiliser la commande mimeopen, dans un terminal, allez dans le dossier où se trouve votre fichier .exe et tapez

mimeopen -d filename.exe

Vous obtiendrez un menu contextuel, où vous pourrez voir certaines options, mais il y a aussi une option 'Autre ...', choisissez celle-ci, puis tapez la commande que vous utiliseriez si vous ouvriez le fichier dans le terminal et le remplaciez le nom de fichier avec %f. Dans ce cas, vous devez taper wine %f.

Maintenant, l'association par défaut pour tous les fichiers exe doit être remplacée par wine.

Alternativement, l'utilisation d' Ubuntu-Tweak comme décrit dans Changer toutes les associations de gedit en une autre application changera également l'application par défaut associée.

Gerhard Burger
la source
1
Très bonne réponse. J'ai utilisé cette même approche pour .mp4 pour changer le lecteur vidéo.
Elder Geek
L'utilisation de mimeopen est correcte lorsque vous souhaitez utiliser / créer une commande personnalisée, mais si vous souhaitez simplement définir une application comme valeur par défaut pour un type MIME, alors r. cliquez sur> propriétés> ouvrir avec> choisir l'application> cliquez sur le Set as defaultbouton est mieux.
doug
2
@doug vous avez raison, mais la question est de savoir quoi faire si l'application ne figure pas dans cette liste (ce qui arrive souvent).
Gerhard Burger
Comment faites-vous ce processus en une seule ligne? J'ai un script et je veux mettre .exe sur wine %f, .vlc sur vlc %f etc ... Est-il possible de le faire dans un script bash? merci
Ugo Hed
Lire la page de manuel ( man.cx/mimeopen ) Je ne peux malheureusement pas.
Gerhard Burger