Linux 사용자로서 일부 응용 프로그램은 경로를 열도록 요청할 수 있으며 이로 인해 파일 관리자가 시작됩니다. 프로그래밍 방식 으로이 작업을 수행하고 싶지만 기본 파일 관리자가 무엇인지 어떻게 알 수 있습니까? 이 정보를 찾는 방법이 있습니까? 환경 변수가 있습니까? “파일 관리자”란 파일을 관리 할 수있는 응용 프로그램, 즉 Nautilus (GNOME) 또는 Dolphin (KDE)과 같은 폴더 만들기, 이름 바꾸기, 폴더 만들기 등을 의미합니다.
미리 감사드립니다!
답변
“Linux 용 기본 파일 관리자”와 같은 것은 없습니다. 그것은 모두 당신이 그것을 열려고하는 방법에 달려 있습니다. XDG에 문의하면이 파일 관리자가 XDG가 무엇을 생각하는지 확인해야합니다. Gnome 또는 KDE와 같은 다른 “환경”에 대해서도 마찬가지입니다. 모두 설치했다면 각기 다른 “기본 파일 관리자”를 가질 수 있습니다.
기본 앱의 경우는 주로 Windows에서 온 것으로 보입니다. 거기에는 Windows가 제공하는 환경이 하나뿐입니다. 따라서 기본 응용 프로그램의 개념은 실제로 시스템 전체에 적용됩니다. Linux의 경우에는 그렇지 않습니다.
$ EDITOR 환경 변수에 저장된 것과 같이 Linux에서 기본 앱으로 인식 할 수있는 것은 시스템 도구와 스크립트를 작성하는 많은 사람들이 사용하는 규칙처럼 “진정한”기본 앱이 아닙니다. 사용 사례에 적합한 $ FILEMANAGER를 자유롭게 정의하십시오.
답변
이 xdg-mime
명령을 사용하십시오 . xdg는 데스크탑 환경에 구애받지 않아야합니다 (예 : xdg-open
올바른 파일 오프너에 인수를 전달 함). 기본 파일 관리자를 사용하려면 다음을 수행하십시오.
xdg-mime query default inode/directory
답변
xdg-open <DIR>
디렉토리에서 파일 관리자를 시작하는 데 사용할 수 있습니다 . xdg
어떤 파일 관리자가 사용되는지 알아보기 위해 일부 응용 프로그램 을 쿼리 할 수 있습니다 .
답변
방금 같은 문제가 발생했습니다. (나는 오히려 의견을 말하고 싶지만 내 명성은 충분히 높지 않습니다)
나는 시도 xdg-open
했고 그것은 id3 태그 편집기 인 EasyTag를 시작합니다 (어쨌든 재미있다 🙂
나는 Gerhard Burgers 답변을 시도했다.
xdg-mime query default inode/directory
그리고 그것은 dolphin.desktop
내 경우에 돌아 왔습니다 .
그래서 제 경우에는 올바른 해결책이었습니다 ( “.dektop”을 “”로 대체) :
xdg-mime query default inode/directory | sed 's/.desktop//g'
하지만 나는이 시스템에서 이것을 testet 만 실행하고있다.
답변
와우, 아무도 여기에 정답을 게시하지 않을 것입니다.
Linux의 기본 응용 프로그램은 Freedesktop (이전 XDG) Mimeapps Standard 및이 기반이되는 몇 가지 다른 사양에 의해 처리됩니다 .
아치 리눅스 위키에는 포괄적 인 기사 도 포함되어 있습니다. 당신이 찾고있는 것은 mimetype의 연결입니다 inode/directory
.
답변
모두가 inode/directory
MIME 유형을 언급 한 것 같습니다 .xdg-open
대부분의 경우 (파일 관리자를 통해 프로그래밍 방식으로 디렉토리를 열어야 함) 대부분의 경우 작동해야하지만 때로는 잘못된 응용 프로그램 (예 : Visual Studio Code와 같은 파일 관리자가 아님)도 연결할 수 있습니다 와 그것 inode/directory
의 기본 응용 프로그램으로.
또한 요구 사항에 사용할 수있는 D-Bus ( org.freedesktop.FileManager1
세션 버스) 용 파일 관리자 인터페이스도 있으므로 파일 관리자가이 D-Bus 인터페이스를 지원하는 경우에도 사용할 수 있습니다. 모든 파일 관리자가 이것을 구현하지는 않았으므로 사용할 수 있는지 확인하십시오. 현재 Dolphin (KDE), Nautilus (GNOME) 및 Deepin File Manager (DDE)가이 D-Bus 인터페이스를 구현 한 것 같습니다. 이 D-Bus 인터페이스가 어떤 프로세스 소유자인지 확인하려면 (파일 관리자를 통해 프로그램 적으로 경로를 열도록 요청하려는 경우 필요하지 않음) 이 답변을 참조하십시오.