转自:http://shawnster.org/tips/upload-and-download-through-shell.html
或许真的有和我一样想通过 SSH 进行本地文件上传或者下载的同学吧, SSH 的好处是让文件在传输过程中更加安全,我却不是因为这个原因产生这个想法,只是觉得一边用 FTP 工具上传一边用 PuTTy 来解压或者压缩真的是挺傻的。其实用 SecureCRT 可以比较方便地实现,但是它是收费软件,我不喜欢,所以我坚持使用 PuTTy。
严格来说,通过 SSH 进行本地文件的上传或者将 Linux 主机中的文件下载至本地并不是 PuTTy 的功能,而是通过其完整安装包内的 psftp.exe 文件实现的。所以,要完成这些操作, Windows 内必须有完整的 PuTTy 安装包而不仅仅是 putty.exe 这一个文件。
接下来就是开启 psftp.exe 了,和 Putty 一样是全字符界面。相对于 shell 繁多的命令,上传和下载使用的命令屈指可数,将用到的命令列在下面:
- open calpico.dreamhost.com 用于连接远程 linux 服务器,其中 calpico.dreamhost.com 替换为您自己的地址。
- cd public_html/wp-content/ 用于切换远程 Linux 服务器上的目录,其中 public_html/wp-contnt 替换为您自己实际的路径。
- lcd D:/downloads/ 用于切换本地的路径,其中 D:/downloads/ 就是我自己电脑里的 D:\downloads\ ,总之,切换本地路径的目的是为了上传这个目录里的文件或者将服务器上的文件下载到这个文件夹里,如果你要上传位于 C 盘 Windows 文件夹里的 notepad.exe 到服务器上,就得 lcd C:/windows/。
- put notepad.exe 上传 notepad.exe 到服务器上。
- get notepad.exe 下载 notepad.exe 到自己电脑商。
使用以后,我发现这么上传下载文件还有一个好处,因为是字符界面,文件在上传和下载过程中占用的系统资源非常少,甚至感觉不到它正在运行,比开着 ftp 客户端傻等好多了。缺点也有,由于看不到传输进度,如果遇到大文件,还是得傻等。