xdg-open ทำงานอย่างไร


27

ตามหน้า man xdg-openจะเปิดไฟล์โดยใช้แอปพลิเคชันที่ผู้ใช้กำหนดค่าไว้ แต่แอปพลิเคชั่นนั้นถูกกำหนดอย่างไร? ฉันไม่เห็นไฟล์กำหนดค่าที่เกี่ยวข้องxdg-utilsดังนั้นการตั้งค่าของฉันถูกเก็บไว้ที่ไหนและฉันจะแก้ไขได้อย่างไร การดูว่าไฟล์ PNG ง่าย ๆ เปิด Internet Explorer โดยใช้ Wine ฉันต้องเปลี่ยนการตั้งค่าเหล่านี้

คำตอบ:


27

ดูเนื้อหาของxdg-openไฟล์และคุณจะสังเกตเห็นว่ามันเป็นสคริปต์เชลล์แบบง่าย ๆ ภารกิจหลักคือการระบุสภาพแวดล้อมเดสก์ท็อปที่ใช้งานซึ่งจะถูกใช้เพื่อมอบหมายงานให้กับเครื่องมือเฉพาะ:

  • KDEมอบสิทธิ์ให้kde-openหรือkfmclient
  • Gnomeมอบหมายให้gvfs-openหรือgnome-open
  • Mateผู้ได้รับมอบหมายให้gvfs-openหรือmate-open
  • XFCEมอบสิทธิ์ให้exo-open
  • LXDEมอบสิทธิ์ให้pcmanfmกับโดยใช้ทางเลือก "ทั่วไป" สำหรับ URL ส่วนใหญ่
  • ตรัสรู้มอบหมายให้enlightenment_open
  • ทุกสิ่งทุกอย่างถูกเรียกว่า " ทั่วไป " และสคริปต์จะพยายามเสี่ยงโชคของตนเอง

ดังนั้นข้อความหลักคือ: ในสถานการณ์ส่วนใหญ่หนึ่งในผู้รับมอบสิทธิ์เหล่านี้จะทำงานจริงดังนั้นคุณควรตรวจสอบว่ามีการกำหนดค่าเหล่านี้อย่างไร

ยกตัวอย่างเช่นผมทำงาน XFCE เพื่อxdg-openการโทรexo-openที่ใช้การตั้งค่า XFCE ใช้ได้ผ่านอินเตอร์เฟซผู้ใช้ XFCE ~/.local/share/applications/mimeapps.listการตั้งค่าและเก็บไว้ใน

สำหรับรายละเอียดเกี่ยวกับไฟล์ปรับแต่งที่ใช้งานstrace -e fileอาจมีประโยชน์ และถ้าคุณอยู่ในสถานการณ์“ทั่วไป” และต้องการที่จะเห็นสิ่งที่ตัวเองไม่คุณสามารถลองxdg-opensh -x `which xdg-open` file.name


2
คำตอบที่คล้ายกันสำหรับคำถามที่แตกต่าง :-)
patryk.beza
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.