Linux

執行遠端命令

  • January 24, 2018
  1. 我無法編輯正在連接的 fs 的 .bashrc
  2. 我必須使用該~/.ssh/config文件

這是我目前的配置:

Host my-ssh
HostName <ip>
User <user>
IdentityFile <file location>
Compression yes
RemoteCommand cd <path to folder>

當我跑步時,ssh my-ssh什麼也沒有發生。連接似乎自動關閉。如果我刪除RemoteCommand它連接沒有問題的線路。

這是伺服器配置上的東西嗎?它是一個 EC2 實例,可以是 CentOS 或 RHEL,而 bash 是外殼。

如果您指定遠端命令,則 ssh 連接將在遠端命令退出後立即關閉。命令將cd幾乎立即退出。

做你想做的事的一種常見方法是:

RemoteCommand cd /some/path && bash

(用你想要的 shell 代替“bash”)。如果 cd 操作成功,則此 cd 指向路徑,然後呼叫子 shell。當 subshel​​l 退出時,ssh 連接將關閉。

您還需要強制 ssh 為會話分配 PTY:

RequestTTY yes

如果你不這樣做,那麼 ssh 預設不會請求一個,你會得到一個非互動式的 shell 會話。值得注意的是,您不會得到命令提示符。

引用自:https://unix.stackexchange.com/questions/419198