2016-07-26 17 views
1

In Emacs bietet der Befehl locate eine Möglichkeit zum Ausführen von Unix locate und Öffnen von Dateien auf dem lokalen Dateisystem.Suchen und Öffnen von Remote-Dateien

Ich benutze TRAMP, um auf entfernte Dateien zuzugreifen - ist es möglich, emacs 'locate zu verwenden, um entfernte Dateien zu finden und zu öffnen?

Antwort

0

Wahrscheinlich ist es nicht möglich. locate verwendet call-process, der keine Remote-Prozesse ausführt.

0

Ich weiß nicht, ob Sie per se locate Funktion mit Tramps Emacs verwenden können, aber man kann remote an einen Host verbinden und locate auf diesem System über M-x shell oder M-x eshell laufen. Ich habe einige Wrapper-Funktionen, die diese Aufgabe leichter machen (obwohl ich sie meistens bekam fromelsewhere):

(defun remote-eshell (host) 
    (interactive "sHost: ") 
    (let ((default-directory (concat "/ssh:" (format "%s:" host)))) 
    (eshell host))) 

(defun remote-shell (host) 
    (interactive "sHost: ") 
    (let ((default-directory (concat "/ssh:" (format "%s:" host)))) 
    (shell))) 

Nachdem Sie die gewünschten Dateien auf dem entfernten Host Lokalisieren Sie sie dann über TRAMP öffnen können mit C-x C-f /ssh:remotehost

Wenn Sie sich über TRAMP mit einem entfernten Host verbinden, sollten Sie außerdem sicherstellen, dass der Host keine merkwürdigen Eingabeaufforderungen sendet, da TRAMP diese nicht gut verarbeitet. Sehen Sie mehr dazu here.