OS의 기본 탐색기에서 현재 파일이 포함 된 폴더를 여는 가장 쉬운 방법은 무엇입니까? explorer.exe)로 현재 파일이 들어있는 폴더를 여는

OS의 기본 탐색기 (예 : Windows OS의 경우 explorer.exe)로 현재 파일이 들어있는 폴더를 여는 가장 쉬운 방법은 무엇입니까?



답변

사용하여 browse-url-of-file디렉토리를 제공 할 때 작동합니다.

다음과 같이 현재 파일의 디렉토리를 여는 명령을 구현할 수 있습니다.

(defun browse-file-directory ()
  "Open the current file's directory however the OS would."
  (interactive)
  (if default-directory
      (browse-url-of-file (expand-file-name default-directory))
    (error "No `default-directory' to open")))

그런 다음 M-x browse-file-directoryOS의 파일 브라우저에서 디렉토리를 열어야합니다.


답변

MS Windows의 경우 :

라이브러리를로드 w32-browser.el하고 command를 사용하십시오 w32explore. 요청한 내용을 정확하게 수행합니다. MS Shell Execute를 참조하십시오 .

Dired + 를 사용하는 경우 DiredM-RET 의 파일 또는 디렉토리 이름에서 Windows 탐색기엽니 다 .


답변

기본 탐색기 프로그램과 현재 폴더 (예 : MS Windows)를 사용하여 shell-command( M+ !)를 실행하십시오 .explorer .


답변

처음에는 전체 경로를 클립 보드에 복사하십시오.

;; you need install xsel under Linux
;; xclip has some problem when copying under Linux
(defun copy-yank-str (msg &optional clipboard-only)
  (unless clipboard-only (kill-new msg))
  (cond
   ;; display-graphic-p need windows 23.3.1
   ((and (display-graphic-p) x-select-enable-clipboard)
    (x-set-selection 'CLIPBOARD msg))
   (t (with-temp-buffer
        (insert msg)
        (shell-command-on-region (point-min) (point-max)
                                 (cond
                                  ((eq system-type 'cygwin) "putclip")
                                  ((eq system-type 'darwin) "pbcopy")
                                  (t "xsel -ib")))))))

(defun cp-fullpath-of-current-buffer ()
  "copy full path into the yank ring and OS clipboard"
  (interactive)
  (when buffer-file-name
    (copy-yank-str (file-truename buffer-file-name))
    (message "file full path => clipboard & yank ring")))