답변:
당신이 사용할 수있는 펄 파일 mimeinfo을 에 extra
MIME 형식을 관리하는 저장소.
모든 .pdf
파일 을 여는 예 apvlv
:
/usr/bin/vendor_perl/mimeopen -d $file.pdf
그런 다음 프롬프트에서 애플리케이션을 입력하십시오 apvlv
..
xdg-open
왼쪽 구성 xdg-open
되지 않은 응용 프로그램 은 파일을 올바르게 열지 않습니다.
-d
스위치는 기본을 설정합니다. 따라서이를 사용하여 열면 원하는 응용 프로그램 fileA.pdf
으로 열 수 있습니다 fileB.pdf
.
mimeopen -d a.pdf
기본값을 설정 *.pdf
하지만 자체 기본값을 설정 mimeopen b.pdf
합니다. 그러나 xdg-open
구성은 변경되지 않고 여전히 모든 것을 열어줍니다 firefox
: /
mimeopen
, xdg-open
예상대로 동작 -의 경우 .pdf
S, 그것은 그들을 열립니다 apvlv
.
sudo xdg-mime default pluma.desktop text/plain
준다 touch: cannot touch "/home/user/.local/share/applications/mimeapps.list": No such file or directory /usr/bin/xdg-mime: 807: /usr/bin/xdg-mime: cannot create /home/user/.local/share/applications/mimeapps.list.new: Directory nonexistent
; /usr/bin/vendor_perl/mimeopen -d $file.txt
제공합니다 bash: /usr/bin/vendor_perl/mimeopen: No such file or directory
.
xdg 자체의 유틸리티를 사용하지 않는 이유는 무엇입니까?
Thunar를 기본 파일 브라우저, 즉 폴더를 열기위한 기본 응용 프로그램으로 만들려면
$ xdg-mime default Thunar.desktop inode/directory
xpdf를 기본 PDF 뷰어로 사용하려면 :
$ xdg-mime default xpdf.desktop application/pdf
로컬 MIME 데이터베이스에 항목을 작성해야합니다.
~/.local/share/applications/defaults.list
[Default Applications]
application/pdf=xpdf.desktop
PDF 파일이 xpdf로 열립니다.
defaults.list
므로 필요한 경우 손으로 간단하게 편집 할 수 있습니다.
xdg-mime
수정하지 않았지만 defaults.list
수동으로 편집하면 (이 답변의 힌트 덕분에) 트릭을 수행했습니다.
데비안에서는 루트로 명령을 사용할 수 있습니다
update-mime-database /usr/share/mime
가진 shared-mime-info
설치 패키지를.
이와 같은 것을 사용 xdg-mime
하여 각 .desktop
파일과 파일에 포함 된 mimetype에 적합한 명령 을 생성 한 다음 원하는 것을 실행할 수 있습니다. 참고 /usr/share/applications
하위 디렉토리가있을 수 있습니다.
for dd in /usr/share/applications ~/.local/share/applications; do
for d in $(ls $dd 2>/dev/null | grep "\\.desktop$"); do
for m in $(grep MimeType $dd/$d | cut -d= -f2 | tr ";" " "); do
echo xdg-mime default $d $m;
done;
done;
done
이것은 @ aleb 's answer 와 비슷하지만 공백이있는 데스크탑 파일에서 작동합니다.
find /usr/share/applications ~/.local/share/applications -iname '*.desktop' -print0 | while IFS= read -r -d $'\0' d; do
for m in $(grep MimeType "$d" | cut -d= -f2 | tr ";" " "); do
echo xdg-mime default "'$d'" "'$m'"
done
done
xdg-mime
(일부 것은xdg-utils
) (구성, 질의) 작업을위한 최선의 대답이다xdg-open
. 참조 unix.stackexchange.com/questions/8793/...