手写dos batch简易ssh client

xshell 时不时会过期要升级,又多数会软件自动升级失败,导致要重新申请学生版安装,网页容易连不上。finalshell 好像体验一般;现用 WindTerm,不过用 vim 会有排版问题,见 [1]。

用 vim 时临时改用 windows 命令行连,不想每次都手打连接命令,手写一个简易 ssh client:

  • 事先将连接信息 <USER>@<IP> 在文件中写好
  • 事先配好 ssh 免密登录,否则每次都要输密码
  • for 的范围相应改,左闭右(本例的 03
@echo off
setlocal enabledelayedexpansion

@REM servers
set servers[0]=QUIT
set servers[1]=itom@1.2.3.4
set servers[2]=tomsss@5.6.7.8
set servers[3]=tomascat@9.10.11.12

:connect
@REM show servers' id, user & ip
for /l %%n in (0,1,3) do (
   echo [%%n] !servers[%%n]!
)

@REM prompt, input server id & connect
set /p "sid=which: "
if %sid% LEQ 0 (
	goto :eof
) else if defined servers[%sid%] (
	ssh !servers[%sid%]!
	@REM cls
	for /l %%i in (0,1,7) do echo.
	goto :connect
) else (
	echo No such server: %sid%
	goto :connect
)

根据输出提示,输入想连的 server 编号,回车。

windows terminal 好像也挺好用的,分屏操作见 [5],能处就不用其它 shell 软件了。

References

  1. vim layout out of order #1630
  2. In Windows cmd, how do I prompt for user input and use the result in another command?
  3. Batch Script - Arrays
  4. How can I echo a newline in a batch file?
  5. windows terminal退出时关闭窗口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值