bash - 服务器询问终端类型阻止我自动运行命令
问题描述
我希望 ssh 到我部门的服务器,cd
自动到一个目录,如果我愿意,希望能够自动运行其他命令。我已经尝试了几种方法,这些方法对堆栈溢出的很多人都有效,但它们对我不起作用。
我尝试了以下线程中的方法:
特别是,我尝试过:
1. ssh 单线
ssh -t user@domain.com 'cd /some/path; bash -l'
和
2.使用expect
脚本
#!/usr/bin/expect -f
spawn ssh $argv
send "cd /some/path\n"
interact
两个代码看起来都很好,并且对线程中的人有用。但是,它们对我不起作用。
我预计,问题在于部门服务器在我登录时自动询问我的终端类型,从而阻止我的自动命令正常运行。
$ ssh -t user@domain.com 'cd /some/path; bash -l'
Terminal type? [xterm-256color]
点击 后,它会将我带入主目录,就好像我还没有一样cd
。第二种方式给出了类似的结果。
我怎样才能克服这个?非常感谢您!
解决方案
推荐阅读
- javascript - ReactJS :: 如何在页面更改时仅显示相关菜单项并隐藏其他菜单项
- bash - bash tr 额外操作数重定向到另一个文件
- hibernate - 'org.hibernate.PersistentObjectException:分离的实体传递给坚持:'
- c++ - 为什么 OMP 嵌套并行执行的输出与线性执行不同?
- python - 用于标准输入的 Python 单线直接到 zlib.compress
- javascript - 谷歌注释图表试图获取特定的时间范围
- go - cmd.Run() 返回“文件不存在”错误
- excel - VBA_多个公共或全局变量以一种简单的方式
- php - 我的网站自动发送 ajax 请求同一页面
- python - 有条件地为路由设置 FastAPI 响应模型