Consulte también el docstring para la variable tramp-methods
. Esta parte parecería digno de mención:
tramp-remote-shell
Esto especifica el shell para utilizar en el host remoto. Este DEBE ser un shell tipo Bourne. Normalmente no es necesario establecer esto a cualquier valor que no sea "/ bin/sh": vagabundo quiere utilizar un shell que groks expansión de tilde, pero puede buscar para ello. También tenga en cuenta que "/ bin/sh" existe en todos los Unixen, esto puede no ser cierto para el valor que decida usar. Usted ha sido advertido.
Editar:
Así que aquí está una manera que usted puede crear un nuevo método basado en uno ("scpc" en este ejemplo) existente y, a continuación, dar el método personalizado un shell remoto diferente :
(require 'tramp)
(let* ((base-method (cdr (assoc "scpc" tramp-methods)))
(new-method (copy-tree base-method))
(rshell (assq 'tramp-remote-shell new-method)))
(setcdr rshell "/system/bin/sh")
(add-to-list 'tramp-methods (cons "android" new-method)))
Tenga en cuenta que en Emacs 23 (vagabundo 2.1.20), esta propiedad fue nombrado tramp-remote-sh
. En Emacs 24 (Tramp 2.2.3-24.1) se ha cambiado a tramp-remote-shell
.
y supongo que se puede utilizar este método por defecto para el host especificado con esto:
(add-to-list
'tramp-default-method-alist
(list "\\`myhost\\'" nil "android"))
Parece que establece el shell para todos los accesos a través de un método determinado (por ejemplo, ssh). ¿Hay alguna forma de configurar esto por host? –
Probablemente desee agregar un nuevo método que use el shell-shell de vagabundo necesario, pero que de otro modo sea idéntico al método en el que lo está basando, y luego usarlo para acceder al host en cuestión. – phils
Vea también la variable 'tramp-default-method-alist', para asignar hosts a los métodos. – phils