![在 Windows 上透過 SSH 使用 Git 時如何停用 MOTD?](https://rvso.com/image/1520077/%E5%9C%A8%20Windows%20%E4%B8%8A%E9%80%8F%E9%81%8E%20SSH%20%E4%BD%BF%E7%94%A8%20Git%20%E6%99%82%E5%A6%82%E4%BD%95%E5%81%9C%E7%94%A8%20MOTD%EF%BC%9F.png)
我在 Windows 上使用 Git,並透過 SSH 建立儲存庫。每當我執行任何操作時,我都會從伺服器取得 MOTD(這是我工作的公司發出的法律警告)。
看起來如果我在Linux 上,我可以使用.hushlogin 檔案停用此功能,但我嘗試將其放在主資料夾(在我的例子中實際上是f:\)和c:\users\$myID 中,並且這兩種情況都不起作用。
處理這個問題的正確方法是什麼?
(它使用 Git\bin 安裝資料夾中的 ssh.exe,如果這有影響的話)
答案1
答案是將一個名為「config」的檔案放入使用者的 .\ssh\ 資料夾(與 id_rsa 檔案所在的資料夾相同)中,並在其中放入以下內容:
LogLevel QUIET
答案2
根據上面的各種評論,您不應該如果您的 ssh 命令列包含要在伺服器上執行的(非互動式)命令,則取得 MOTD,例如ls
:
C:\> \Git\bin\ssh.exe user@host "ls -l *.cc"
但是,如果上面的命令做給你 MOTD (以及來自 的輸出ls
),那麼某些東西就被破壞或配置錯誤 - 可能是在伺服器端。但你也許還是可以解決這個問題:
-N
遠端/伺服器端沒有登入 shell-T
強制在伺服器端不分配 TTY/終端
嘗試其中一個或兩個標誌:
C:\> \Git\bin\ssh.exe -N -T user@host "ls -l *.cc"