Windows系统下使用CMD连接SSH及使用SFTP
前段时间做出了一个大胆的决定,稳定被老板榨干了三年有余的我辞职了!哦,当然这并不是我们这次的主题。由于我辞职后东西搬回家去了,再次跑出来后自然是不可能随身带着笨重的台式主机啦!笔记本电脑嘛,我又没有,但是我可是有一台Windows平板电脑的。配置贼低的平板电脑,我平时都是拿来看剧、看漫画、或者偶尔应急用一下。这段时间出门正好派上用场了,可以带在身边处理些简单的东西。
在连接服务器时正好有使用SSH和SFTP的需求,但是这性能掉渣内存吃紧的windows电脑让我额外装一个软件来支持这些功能我有点下不了手,况且也只是应急使用。不过呢,我想起了好久之前(好几年前了)叫朋友推荐好用的SSH软件时朋友的一句话:我一般是用CMD。好像有一段时间我真的是使用CMD实现这个功能,并且也能满足我的使用需求。正好借着这次使用经历复习一下,这个小技巧吧,其实对于我这样使用量少、使用需求小的人来说挺实用的。
Windows 命令提示符 (CMD) 连接到远程主机的 SSH服务器
首先呢,你的windos电脑是要有SSH 客户端。放心,OpenSSH是Windows10或更高版本的Windows自带有的程序,当然你的windows系统如果精简过了那就另说。如果您正在使用旧版本的 Windows,则需要另外安装 OpenSSH 客户端,不过我的建议是升级系统版本吧。
- 首先打开命令提示符(CMD),Win+R 键,输入“cmd”,然后按 Enter。(我一般是开始菜单状态下输入cmd直接回车)
- 输入以下命令以连接到 SSH 服务器:
1 | ssh username@hostname |
注释
:其中 username
是您在远程主机上的用户名, hostname
是远程主机的 IP 地址或域名。
- 如果远程主机上的 SSH 服务器配置为使用非标准端口(默认SSH22端口),则需要指定端口号。例如,如果远程服务器的 SSH 服务器正在侦听端口 2222,则可以使用以下命令:
1 | ssh -p 2222 username@hostname |
- 第一次连接若提示:Are you sure you want to continue connecting (yes/no/[fingerprint])? 则输入
yes
然后回车。 - 输入您的远程服务密码,回车就连接成功了。
- 当你操作完成后,可以输入“exit”命令来断开与 SSH 服务器的连接。(我一般是直接关闭CMD窗口)。
在 Windows 命令提示符 (CMD) 上使用 SFTP
上面说到Windows10或更高版本的Windows自带有OpenSSH程序,OpenSSH也是支持SFTP文件传输,所以我们还是可以通过CMD来使用SFTP。
- 打开命令提示符(CMD)
- 输入以下命令以连接到 SFTP 服务器:
1 | sftp username@hostname |
注释
:其中 username
是您在远程主机上的用户名, hostname
是远程主机的 IP 地址或域名。
- 如果远程主机上的 SFTP 服务器配置为使用非标准端口,则需要指定端口号。例如,如果远程服务器的 SFTP 服务器正在侦听端口 2222,则可以使用以下命令:
1 | sftp -P 2222 username@hostname |
- 输入你的密码,确认回车。
- 一旦连接成功,你可以使用以下命令在本地和远程主机之间传输文件:
1 | put [local-path] [remote-path] #将本地文件传输到远程主机。 |
注释
: local-path
指本地文件存储路径, remote-path
指远程主机文件存储路径。
注意!
:在 OpenSSH 客户端中,文件路径使用正斜杠(/)而不是反斜杠(\)。例如,要上传 C 盘根目录下的 file.txt
文件到远程服务器的 root
目录下,你应该使用以下命令: put C:/file.txt /root/
。