จะค้นหาตัวจัดการไฟล์เริ่มต้นได้อย่างไร


22

ในฐานะผู้ใช้ Linux ฉันเห็นว่าบางแอปพลิเคชันสามารถขอเส้นทางที่จะเปิดและทำให้ตัวจัดการไฟล์เปิดใช้งานได้ ฉันต้องการทำสิ่งนี้โดยทางโปรแกรม แต่ฉันจะรู้ได้อย่างไรว่าตัวจัดการไฟล์เริ่มต้นคืออะไร มีวิธีหาข้อมูลนี้ไหม? ตัวแปรสภาพแวดล้อมใด ๆ โดย "ตัวจัดการไฟล์" ฉันหมายถึงแอปพลิเคชันที่อนุญาตให้คุณจัดการไฟล์ของคุณ: สร้างเปลี่ยนชื่อสร้างโฟลเดอร์ ฯลฯ เช่น Nautilus (ใน GNOME) หรือ Dolphin (ใน KDE)

ขอบคุณล่วงหน้า!

คำตอบ:


7

ไม่มีสิ่งเช่น "ตัวจัดการไฟล์เริ่มต้นสำหรับ Linux" ทุกอย่างขึ้นอยู่กับว่าคุณจะพยายามเปิดมันอย่างไร หากคุณถาม XDG คุณจะต้องตรวจสอบว่า XDG คิดว่าตัวจัดการไฟล์นี้ควรเป็นอย่างไร ข้อตกลงเดียวกันสำหรับ "สภาพแวดล้อม" อื่น ๆ เช่น Gnome หรือ KDE หากคุณได้ติดตั้งทั้งหมดมันเป็นไปได้อย่างสมบูรณ์ (และดี) สำหรับพวกเขาแต่ละคนมี "ผู้จัดการไฟล์เริ่มต้น" ที่แตกต่างกัน

เคสของแอพเริ่มต้นนั้นส่วนใหญ่มาจาก Windows ตรงนั้นเรามีแค่สภาพแวดล้อมเดียว Windows เดียวก็มอบให้เราด้วย ดังนั้นความคิดของแอปพลิเคชั่นเริ่มต้นจึงเป็นระบบที่มีประสิทธิภาพ นี่ไม่ใช่กรณีที่มี Linux

สิ่งที่คุณอาจรับรู้ว่าเป็นแอพเริ่มต้นภายใต้ Linux เช่นที่เก็บไว้ในตัวแปรสภาพแวดล้อม $ EDITOR ไม่ใช่แอพเริ่มต้นที่ "เป็นจริง" มากเท่าที่เป็นเพียงการประชุมที่ผู้คนจำนวนมากเขียนเครื่องมือระบบและสคริปต์ รู้สึกฟรีเพื่อกำหนด $ FILEMANAGER หากเหมาะสมกับกรณีการใช้งานของคุณ


ฉันคิดว่าอาจมีตัวแปรสภาพแวดล้อมสำหรับเรื่องนี้และคิดเกี่ยวกับการกำหนดอย่างใดอย่างหนึ่ง คำตอบที่ดีขอบคุณมาก
Mauren

ฉันคิดว่าคุณหมายถึง XFCE แทน XDG?
แกร์ฮาร์ดเบอร์เกอร์


18

ใช้xdg-mimeคำสั่งนี้ xdg ควรเป็นผู้ไม่เชื่อเรื่องพระเจ้าสภาพแวดล้อมเดสก์ท็อป (เช่นxdg-openจะส่งอาร์กิวเมนต์ไปยังที่เปิดไฟล์ที่ถูกต้อง) ในการรับตัวจัดการไฟล์เริ่มต้นให้ใช้:

xdg-mime query default inode/directory

แหล่ง


2
นี่ควรเป็นคำตอบที่ถูกต้อง
crypdick

17

คุณสามารถใช้xdg-open <DIR>เพื่อเปิดตัวจัดการไฟล์ในไดเรกทอรี คุณอาจสามารถสืบค้นบางxdgแอปพลิเคชันเพื่อค้นหาว่าตัวจัดการไฟล์ใดที่ใช้


ขอบคุณสำหรับคำใบ้ ฉันจะพยายามใช้สิ่งนี้เพื่อแก้ปัญหาของฉัน
Mauren

1

ฉันเพิ่งเจอปัญหาเดียวกัน (ฉันอยากจะแสดงความคิดเห็น แต่ชื่อเสียงของฉันไม่สูงพอ)

ฉันพยายามxdg-openและมันก็เริ่มต้น EasyTag ซึ่งเป็น id3-tag-editor (ตลกอย่างใด) :-)

ฉันลองตอบ Gerhard Burgers

xdg-mime query default inode/directory

และนั่นกลับมาdolphin.desktopในกรณีของฉัน

ดังนั้นในกรณีของฉันทางออกที่ถูกต้องคือ (แทนที่ ".dektop" ด้วย ""):

xdg-mime query default inode/directory | sed 's/.desktop//g'

แต่ฉัน testet สิ่งนี้ในระบบนี้ฉันกำลังทำงานอยู่


1

ไม่น่าเชื่อว่าไม่มีใครโพสต์คำตอบที่ถูกต้องที่นี่

แอปพลิเคชั่นเริ่มต้นบน Linux ได้รับการจัดการโดยFreedesktop (XDG เดิม) Mimeapps Standardและสเปคอื่น ๆ อีกมากมายที่แอปนี้ใช้

Arch Linux Wiki มีบทความที่เข้าใจได้เช่นกัน inode/directoryสิ่งที่คุณกำลังมองหาคือความสัมพันธ์ของชนิด mime ที่


ขอบคุณสำหรับสิ่งนี้. ฉันใช้ Arch & ควรจะคิดเพื่อตรวจสอบ wiki แต่ไม่ได้
โคลินคีแนน

2
และคำตอบของฉันไม่ถูกต้องอย่างไร ฉันโพสต์คำสั่งที่แน่นอนเพื่อสอบถามการinode/directoryเชื่อมโยงกับการxdg-mimeสืบค้น ...
เกอร์ฮาร์ดเบอร์เกอร์

0

ดูเหมือนว่าทุกคนกล่าวถึงinode/directoryประเภท MIME และxdg-openควรทำงานในกรณีส่วนใหญ่สำหรับความต้องการของคุณ (โดยทางโปรแกรมเปิดไดเรกทอรีผ่านตัวจัดการไฟล์) แต่บางครั้งแอปพลิเคชันที่ผิด (ซึ่งไม่ใช่ตัวจัดการไฟล์เช่น Visual Studio Code) ด้วยinode/directoryแอปพลิเคชันเริ่มต้น

นอกจากนี้ยังมีตัวจัดการไฟล์สำหรับ D-Bus ( org.freedesktop.FileManager1ใน Session Bus) ซึ่งสามารถใช้สำหรับความต้องการของคุณเพื่อให้คุณสามารถใช้สิ่งนี้ได้หากตัวจัดการไฟล์ของคุณรองรับอินเตอร์เฟส D-Bus นี้ โปรดตรวจสอบให้แน่ใจว่าคุณสามารถใช้งานได้หรือไม่เนื่องจากตัวจัดการไฟล์ไม่ได้ใช้งานทั้งหมดขณะนี้ดูเหมือนว่าDolphin (KDE), Nautilus (GNOME) และDeepin File Manager (DDE) ได้ใช้อินเทอร์เฟซ D-Bus นี้ และหากต้องการทราบว่าเจ้าของกระบวนการใดที่อินเทอร์เฟซ D-Bus นี้ (คุณไม่จำเป็นต้องทำหากคุณต้องการขอเส้นทางที่จะเปิดผ่านตัวจัดการไฟล์โดยทางโปรแกรม) ดูคำตอบนี้

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