यदि xdg-open
खुले अनुप्रयोगों का उपयोग करते हैं, तो xdg-mime
किसी दिए गए माइम प्रकार के लिए डिफ़ॉल्ट एप्लिकेशन सेट करने के लिए उपयोग करें (आमतौर पर, xdg-utils स्थापित करने से आपको xdg-mime और संबंधित प्रोग्राम मिलते हैं)।
उदाहरण के लिए, दी गई फ़ाइल का "फ़ाइलप्रकार" (माइम-प्रकार, यदि आप होगा) देखना:
$ xdg-mime query filetype tmp.txt
text/plain
$ xdg-mime query filetype foo.pdf
application/pdf
$ xdg-mime query filetype $PWD
inode/directory
उद्घाटन निर्देशिकाओं के लिए डिफ़ॉल्ट फ़ाइल प्रबंधक को बदलने का उदाहरण (caja.desktop (टकसाल के लिए डिफ़ॉल्ट), nautilus.desktop (ubuntu), आदि चुन सकता है:
$ xdg-mime default Thunar.desktop inode/directory
और यह भी locate -i foo.desktop
सत्यापित करें कि foo.desktop
वास्तव में मौजूद है।
इस बिंदु पर अधिक, यह देखने के लिए कि डिफ़ॉल्ट पाठ संपादक क्या है,
$ xdg-mime query default text/plain
gedit.desktop
एक अलग डिफ़ॉल्ट पाठ संपादक का उपयोग करने के लिए (फिर से, ".desktop" फ़ाइल मौजूद है) की पुष्टि करते हुए:
$ locate -i vim.desktop
/usr/share/applications/gvim.desktop
$ xdg-mime default gvim.desktop text/plain
अब, या तो "foo.txt" (आपके GUI फ़ाइल प्रबंधक में) पर डबल-क्लिक करें या चलाने के बजाय xdg-open foo.txt
उपयोग करेंगे ।gvim
gedit
समस्या निवारण: सुनिश्चित करें कि किसी दिए गए आवेदन के लिए ".desktop" फ़ाइल मिल सकती है, क्योंकि इसका उपयोग xdg-mime
उपयोगिता के साथ किया जाना है ; जैसे,
$ xdg-mime default emacs text/plain
xdg-mime: malformed argument 'emacs', expected *.desktop
इसके अलावा, यदि ".desktop" फ़ाइल मौजूद नहीं है, तो यह चुपचाप काम करने में विफल रहता है:
$ locate -i emacs.desktop
(none)
$ xdg-mime default emacs.desktop text/plain # won't work
वास्तविक emacs ".desktop" फ़ाइल (मेरे env में):
$ locate -r 'emacs.*\.desktop'
/usr/share/applications/emacs24.desktop
$ xdg-mime default emacs24.desktop text/plain # does work
इसे भी देखें: https://wiki.archlinux.org/index.php/xdg-open
/usr/share/applications/mimecache.info
फाइल पर ध्यान दिया, जो डिफ़ॉल्ट एप्लिकेशन को सूचीबद्ध करने के लिए लगता है। यह और भी भ्रमित कर रहा है ...