Jaka komenda przypisuje rozszerzenia

Tematy związane z oprogramowaniem, instalacją, konfiguracją
mike26
Beginner
Posty: 170
Rejestracja: 07 czerwca 2012, 16:33

Jaka komenda przypisuje rozszerzenia

Post autor: mike26 »

Witam, mam pytanie jaka komenda przypisuje rozszerzenia programu do danego pliku. Np. Microsoftowy Word do .doc .docx
Nie chcę za każdym razem po instalacji programu ustawiać rmb->Właściwości->Otwieranie->Dodaj
Skoro można to zrobić szybciej.
Awatar użytkownika
Yampress
Administrator
Posty: 6466
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

Zwie się to MIME types
Odpowiada za to pewien plik

Globalnie jest to
cat /usr/share/applications/mimeinfo.cache [MIME Cache]
application/arj=xarchiver.desktop;
application/atom+xml=liferea.desktop;
application/clarisworks=libreoffice4.2-writer.desktop;
application/csv=libreoffice4.2-calc.desktop;
application/deb=xarchiver.desktop;
application/docbook+xml=abiword.desktop;
application/excel=libreoffice4.2-calc.desktop;
application/illustrator=inkscape.desktop;
application/macwriteii=libreoffice4.2-writer.desktop;
application/mathml+xml=libreoffice4.2-math.desktop;
application/msexcel=libreoffice4.2-calc.desktop;
application/mspowerpoint=libreoffice4.2-impress.desktop;
application/msword=libreoffice4.2-writer.desktop;abiword.desktop;
application/ogg=vlc.desktop;audacious.desktop;audacity.desktop;

lokalnie, który przysłania globalne ustawienia
yampress@debian /home/USER/.local/share/applications]$ cat mimeinfo.cache
[MIME Cache]application/arj=xarchiver.desktop;
application/deb=xarchiver.desktop;
application/java-archive=openjdk-6-java.desktop;
application/ogg=vlc.desktop;
application/oxps=evince.desktop;
application/pdf=gimp.desktop;gimp.desktop;evince.desktop;
application/postscript=gimp.desktop;evince.desktop;
application/vnd.ms-xpsdocument=evince.desktop;
application/vnd.rn-realmedia=vlc.desktop;
application/x-7z-compressed=xarchiver.desktop;
application/x-arj=xarchiver.desktop;
application/x-bzdvi=evince.desktop;
application/x-bzip=xarchiver.desktop;squeeze.desktop;
application/x-bzip-compressed-tar=xarchiver.desktop;squeeze.desktop;
application/x-bzip2=xarchiver.desktop;
application/x-bzip2-compressed-tar=xarchiver.desktop;squeeze.desktop;
application/x-bzpdf=evince.desktop;
application/x-bzpostscript=evince.desktop;
application/x-cb7=evince.desktop;
application/x-cbr=evince.desktop;
application/x-cbt=evince.desktop;
application/x-cbz=evince.desktop;
application/x-cd-image=xfburn.desktop;
application/x-compress=squeeze.desktop;
application/x-compressed-tar=xarchiver.desktop;squeeze.desktop;
application/x-deb=xarchiver.desktop;
application/x-desktop=panel-desktop-handler.desktop;
application/x-dvi=evince.desktop;
application/x-extension-mp4=vlc.desktop;
application/x-flac=vlc.desktop;
application/x-gzdvi=evince.desktop;
application/x-gzip=xarchiver.desktop;squeeze.desktop;
application/x-gzpdf=evince.desktop;
application/x-gzpostscript=evince.desktop;
application/x-jar=openjdk-6-java.desktop;
application/x-java-archive=openjdk-6-java.desktop;
application/x-java-jnlp-file=icedtea-netx-javaws.desktop;
application/x-lzma=xarchiver.desktop;
application/x-lzma-compressed-tar=xarchiver.desktop;
application/x-lzop=squeeze.desktop;
application/x-matroska=vlc.desktop;
application/x-ogg=vlc.desktop;
application/x-rar=xarchiver.desktop;squeeze.desktop;
application/x-rar-compressed=xarchiver.desktop;
application/x-shockwave-flash=vlc.desktop;
application/x-tar=xarchiver.desktop;squeeze.desktop;
application/x-tarz=squeeze.desktop;
application/x-tzo=squeeze.desktop;
application/x-virtualbox-ova=virtualbox.desktop;
application/x-virtualbox-ovf=virtualbox.desktop;
application/x-virtualbox-vbox=virtualbox.desktop;
application/x-virtualbox-vbox-extpack=virtualbox.desktop;
application/x-xzpdf=evince.desktop;
application/x-zip=xarchiver.desktop;squeeze.desktop;
application/x-zip-compressed=xarchiver.desktop;squeeze.desktop;
application/xhtml_xml=chromium.desktop;
application/xspf+xml=vlc.desktop;
application/zip=xarchiver.desktop;squeeze.desktop;
audio/amr=vlc.desktop;
audio/amr-wb=vlc.desktop;
audio/mp4=vlc.desktop;
audio/mpeg=vlc.desktop;
audio/vnd.rn-realaudio=vlc.desktop;
audio/webm=vlc.desktop;
audio/x-flac=vlc.desktop;
audio/x-m4a=vlc.desktop;
audio/x-matroska=vlc.desktop;
audio/x-mp3=vlc.desktop;
audio/x-mpeg=vlc.desktop;
audio/x-mpegurl=vlc.desktop;
audio/x-ms-asf=vlc.desktop;
audio/x-ms-asx=vlc.desktop;
audio/x-ms-wax=vlc.desktop;
audio/x-pn-aiff=vlc.desktop;
audio/x-pn-au=vlc.desktop;
audio/x-pn-realaudio=vlc.desktop;
audio/x-pn-realaudio-plugin=vlc.desktop;
audio/x-pn-wav=vlc.desktop;
audio/x-pn-windows-acm=vlc.desktop;
audio/x-real-audio=vlc.desktop;
audio/x-scpls=vlc.desktop;
audio/x-vorbis+ogg=vlc.desktop;
audio/x-wav=vlc.desktop;
image/avs=display.im6.desktop;
image/bie=display.im6.desktop;
image/bmp=gimp.desktop;
image/cmyk=display.im6.desktop;
image/dcx=display.im6.desktop;
image/eps=display.im6.desktop;
image/fax=display.im6.desktop;
image/fits=display.im6.desktop;
image/g3fax=gimp.desktop;
image/gif=gimp.desktop;display.im6.desktop;
image/gray=display.im6.desktop;
image/jp2=gimp.desktop;
image/jpeg=gimp.desktop;display.im6.desktop;
image/jpeg2000=gimp.desktop;
image/jpx=gimp.desktop;
image/miff=display.im6.desktop;
image/mono=display.im6.desktop;
image/mtv=display.im6.desktop;
image/pcd=display.im6.desktop;
image/pcx=gimp.desktop;display.im6.desktop;
image/pdf=display.im6.desktop;
image/pict=display.im6.desktop;
image/pjpeg=display.im6.desktop;
image/png=gimp.desktop;display.im6.desktop;
image/ps=display.im6.desktop;
image/rad=display.im6.desktop;
image/rgba=display.im6.desktop;
image/rla=display.im6.desktop;
image/rle=display.im6.desktop;
image/sgi=display.im6.desktop;
image/sun-raster=display.im6.desktop;
image/svg+xml=gimp.desktop;
image/targa=display.im6.desktop;
image/tiff=gimp.desktop;display.im6.desktop;evince.desktop;
image/uyvy=display.im6.desktop;
image/vid=display.im6.desktop;
image/viff=display.im6.desktop;
image/vnd.djvu=evince.desktop;
image/vnd.rn-realpix=vlc.desktop;
image/x-bzeps=evince.desktop;
image/x-compressed-xcf=gimp.desktop;
image/x-eps=evince.desktop;
image/x-fits=gimp.desktop;
image/x-gimp-gbr=gimp.desktop;
image/x-gimp-gih=gimp.desktop;
image/x-gimp-pat=gimp.desktop;
image/x-gzeps=evince.desktop;
image/x-icon=gimp.desktop;display.im6.desktop;
image/x-ms-bmp=display.im6.desktop;
image/x-portable-anymap=gimp.desktop;display.im6.desktop;
image/x-portable-bitmap=gimp.desktop;display.im6.desktop;
image/x-portable-graymap=gimp.desktop;display.im6.desktop;
image/x-portable-pixmap=gimp.desktop;display.im6.desktop;
image/x-psd=gimp.desktop;
image/x-psp=gimp.desktop;
image/x-rgb=display.im6.desktop;
image/x-sgi=gimp.desktop;
image/x-tga=gimp.desktop;
image/x-wmf=gimp.desktop;
image/x-xbitmap=gimp.desktop;display.im6.desktop;
image/x-xcf=gimp.desktop;
image/x-xcursor=gimp.desktop;
image/x-xpixmap=gimp.desktop;display.im6.desktop;
image/x-xwindowdump=gimp.desktop;display.im6.desktop;
image/yuv=display.im6.desktop;
inode/directory=Thunar-folder-handler.desktop;
misc/ultravox=vlc.desktop;
text/calendar=xfcalendar.desktop;
text/html=chromium.desktop;
text/xml=chromium.desktop;
video/dv=vlc.desktop;
video/mp2t=vlc.desktop;
video/mp4=vlc.desktop;
video/mp4v-es=vlc.desktop;
video/mpeg=vlc.desktop;
video/msvideo=vlc.desktop;
video/quicktime=vlc.desktop;
video/vnd.rn-realvideo=vlc.desktop;
video/webm=vlc.desktop;
video/x-anim=vlc.desktop;
video/x-avi=vlc.desktop;
video/x-flc=vlc.desktop;
video/x-fli=vlc.desktop;
video/x-flv=vlc.desktop;
video/x-matroska=vlc.desktop;
video/x-mpeg=vlc.desktop;
video/x-ms-asf=vlc.desktop;
video/x-ms-wmv=vlc.desktop;
video/x-msvideo=vlc.desktop;
video/x-nsv=vlc.desktop;
video/x-ogm+ogg=vlc.desktop;
x-content/audio-cdda=vlc.desktop;
x-content/audio-player=vlc.desktop;
x-content/video-dvd=vlc.desktop;
x-content/video-svcd=vlc.desktop;
x-content/video-vcd=vlc.desktop;
x-scheme-handler/http=chromium.desktop;
x-scheme-handler/https=chromium.desktop;
x-scheme-handler/mms=vlc.desktop;
x-scheme-handler/rtmp=vlc.desktop;
x-scheme-handler/rtsp=vlc.desktop;
[yampress@debian ~/.local/share/applications]$

Ewentualnie w xfce 4.10 jest Menu->Ustawienia -> MIME editor czy coś w tym rodzaju i możesz to wyklikać, bądź klikasz na danym pliku prawym klawiszem właściwości i tam jest możliwość otwierania danego rozszerzenia w danym programie.

Do tego dochodzą alternatywy, czyli systemowe powiązania, które programy odpowiadają za co i mają swój priorytet
mike26
Beginner
Posty: 170
Rejestracja: 07 czerwca 2012, 16:33

Post autor: mike26 »

ok, wysłałem skróty programów do

Kod: Zaznacz cały

/usr/share/applications/
oczywiście musiałem zmienić im nazwę ponieważ wszystkie wykrywało jako mozo-made.desktop
zmieniłem globalnie wszystkie wpisy dotyczące libreoffice-word, calc oraz impress. Sprawdziłem kilka rozszerzeń i automatycznie otwierają się w Office 2007.
Jednak gdybym zaktualizował Libreoffice (ponieważ Microsoft Office 2007 obsługuje tylko Word, Excel oraz PowerPoint) to czy moja modyfikacja nie ulegnie zmianie? i od nowa będę musiał to wpisywać?
hucul
Beginner
Posty: 189
Rejestracja: 25 listopada 2007, 11:36
Lokalizacja: Warszawa

Post autor: hucul »

Nie wiem jakiego środowiska graficznego używasz, ale w KDE można to wyklikać. Prawym na interesujący Cię rodzaj pliku -> Właściwości -> Inne... -> Zaznaczyć program oraz zaznaczyć pole "Zapamiętaj program skojarzony z typem pliku"
Awatar użytkownika
Yampress
Administrator
Posty: 6466
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

To są ustawienia raczej tworzone przez system. Lepiej jednak robić ustawienia lokalnie. Każdy user ma przecież swoje upodobania.
Trudno cokolwiek powiedzieć bo nie wiem czy w reinstalacja coś zmienia, ale podczas świeżej instalacji już może się coś zmienić.Natomiast nie zmienia się nic w lokalnych.
Działa to tak, że środowisko graficzne najpierw próbuje otworzyć dany plik programem który jest jako pierwszy przypisany dla danego MIME. Jeśli programu nie ma , próbuje kolejnego wpisu/przypisania i jeśli jest otwiera w nim jak poniżej
image/tiff=gimp.desktop;display.im6.desktop;evince.desktop;
https://wiki.archlinux.org/index.php/De ... plications


[yampress@debian ~]$xdg-mime
xdg-mime - command line tool for querying information about file type handling
and adding descriptions for new file types


Synopsis


xdg-mime query { filetype | default } ...


xdg-mime default application mimetype(s)


xdg-mime install [--mode mode] [--novendor] mimetypes-file


xdg-mime uninstall [--mode mode] mimetypes-file


xdg-mime { --help | --manual | --version }


Use 'man xdg-mime' or 'xdg-mime --manual' for additional info.
[yampress@debian ~]$

mike26
Beginner
Posty: 170
Rejestracja: 07 czerwca 2012, 16:33

Post autor: mike26 »

hucul pisze:Nie wiem jakiego środowiska graficznego używasz, ale w KDE można to wyklikać. Prawym na interesujący Cię rodzaj pliku -> Właściwości -> Inne... -> Zaznaczyć program oraz zaznaczyć pole "Zapamiętaj program skojarzony z typem pliku"
Środowisko graficzne MATE, tak można to włączyć okienkowo, jednak nie chciałem się bawić z każdym rozszerzeniem z osobna skoro można w ustawieniach przypisać szybciej.
Yampress pisze:To są ustawienia raczej tworzone przez system. Lepiej jednak robić ustawienia lokalnie. Każdy user ma przecież swoje upodobania.
Użytkownik jest jeden i upodobań raczej nie zmieni :D
w pliku /home/wojtek/.local/share/applications/mimeapps.list mam

Kod: Zaznacz cały

[Default Applications]
application/msword=mozo-made-1.desktop
application/vnd.openxmlformats-officedocument.wordprocessingml.document=mozo-made-1.desktop
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=mozo-made-3.desktop
application/vnd.ms-excel=mozo-made-3.desktop
application/vnd.openxmlformats-officedocument.presentationml.presentation=mozo-made-2.desktop
application/vnd.ms-powerpoint=mozo-made-2.desktop

Kod: Zaznacz cały

[Added Associations]
application/msword=mozo-made-1.desktop;
application/vnd.openxmlformats-officedocument.wordprocessingml.document=mozo-made-1.desktop;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=mozo-made-3.desktop;
application/vnd.ms-excel=mozo-made-3.desktop;
application/vnd.openxmlformats-officedocument.presentationml.presentation=mozo-made-2.desktop;
application/vnd.ms-powerpoint=mozo-made-2.desktop;

Kod: Zaznacz cały

[Removed Associations]
application/msword=libreoffice4.1-writer.desktop;
application/vnd.openxmlformats-officedocument.wordprocessingml.document=engrampa.desktop;libreoffice4.1-writer.desktop;
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet=engrampa.desktop;libreoffice4.1-calc.desktop;
application/vnd.ms-excel=libreoffice4.1-calc.desktop;
application/vnd.openxmlformats-officedocument.presentationml.presentation=engrampa.desktop;libreoffice4.1-impress.desktop;
application/vnd.ms-powerpoint=libreoffice4.1-impress.desktop;
Mniej więcej wiem o co chodzi jednak łatwo się tu pogubić. Moim celem było stworzenie prostego skryptu przypisującego rozszerzenia do danego programu. Tak można to zrobić za pomocą pierwszego sposobu w pliku "globalnym".
Awatar użytkownika
Yampress
Administrator
Posty: 6466
Rejestracja: 09 sierpnia 2007, 21:41
Lokalizacja: PL

Post autor: Yampress »

Ale widzisz. Przychodzi taka sytuacja, że instalujesz nowy system. Nie zbackupowałeś nigdzie tego pliku i musisz na nowo robić. A lokalnie raz że każdy lubi inny program do otwierania danych plików
drugi raz możesz go przenosić pomiędzy systemami i zawsze będzie ten sam i będziesz miał swoje ustawienia mimo iż root gdzieś na danym systemie ustawi swoje programy
kolejna sprawa ja zawsze robię backup ustawień w katalogu domowym, a m.in katalogu ~/.local/share/applications. i Już mi programy w manu wyglądają tak jak chce, a nie tak jak zrobili to twórcy oprogramowania. To samo z przypisami MIME.
ODPOWIEDZ