Me gustaría configurar ssh_config para que, después de escribir, ssh my_hostname
termine en una carpeta específica. Justo como escribiría cd /folder/another_one/much_much_deeper/
.
¿Cómo puedo lograr eso?
EDITAR. Se han marcado como duplicado de "Cómo ssh en dir ..." sin embargo, es no mi pregunta.
Sé que puedo ejecutar cualquier comando siguiéndolos al ssh
comando. Mi pregunta es sobre el /ssh_config
archivo, no el comando.
ssh
ssh-config
Kazz
fuente
fuente
man ssh_config
. El más cercano es LocalCommand pero no se puede usar para comandos interactivos.ssh_config
? Probablemente haya mejores lugares para configurar el directorio de inicio, y sería útil comprender por qué existe esta restricción particular en una posible solución.ssh_config
" no hace que esto sea un duplicado de "hazlo en Bash". "No puedes hacer eso" es una respuesta perfectamente válida.Respuestas:
No había forma de hacerlo, hasta OpenSSH 7.6 . Del manual :
Entonces ahora puedes tener
Fue introducido en este commit .
fuente
RequestTTY force
si el comando remoto requiere un TTY. Por ejemplo:tmux new -As my-session
ssh
opción asesina ¡Gracias!ssh my_hostname ls
fallará conCannot execute command-line and remote command.
. Hace que otras herramientas que usan ssh como git y rsync también fallen.No es posible. No hay opción para lograr eso en
ssh_config
. Lo más cercano a esto es configurar un alias bash o una función bash, comofuente
Respondí con un boleto diferente antes de que Somoene hubiera señalado que este era el original.
Si usa una Mac, mi recomendación es usar iTerm2 y crear un perfil. Ponga
ssh my_hostname
en la línea de comando y luego agregue el comandocd /folder/another_one/much_much_deeper/
en el texto de envío en el campo de inicio. Cuando se conecte a las sesiones, enviará ssh a su nombre de host y cd al directorio en su caso, o ejecutará un comando.fuente