每當我 ssh 到桌面時,我都會更改$TERM
為ansi
以便 ssh 在 Windows 終端上運行得更好。我決定創建~/.ssh/rc
並添加TERM=ansi
它。問題是,在我 ssh 進入桌面後,終端類型仍然msys
是ansi
.有沒有辦法解決這個問題?
答案1
我也無法從 ~/.ssh/rc 取得 TERM 設定。
我可以透過更改以下內容來使其工作/etc/ssh/sshd_config
PermitUserEnvironment yes
然後重新啟動 sshd 並考慮來自的警告man sshd_config
,
允許使用者環境
指定 ~/.ssh/environment 和 ~/.ssh/authorized_keys 中的environment=選項是否由 sshd(8) 處理。預設為“否”。啟用環境處理可以使用戶能夠使用 LD_PRELOAD 等機制繞過某些配置中的存取限制。
然後我創建了~/.ssh/environment
文件並添加了這一行,
TERM=ansi
重新登入並成功。
編輯:
這不會有太大幫助,但在呼叫 ssh(在 Linux 上)之前在命令列上設定 TERM 確實會在遠端設定術語類型。
TERM=ansi ssh [email protected]
[email protected] ~ $ echo $TERM
ansi
答案2
如果你想設定你的變量,你應該要匯出它,這樣它就會進入你的終端,exec
然後是 -ed 的:
export TERM=ansi