上一帖中讲了sftp服务器与客户端的搭建,这一贴则是用psftp测试的自动登录并上传指定文件。

由于初次应用所以并没有涉及密钥...

***********************

===========操作流程:

    首先将psftp.exe、要上传的文件放到同一文件夹,再此文件夹下新建psftp_cmd.txt,输入代码:

open 10.6.1.210


put UpLoad.zip


bye

以上代码的三步操作为:先打开服务器的地址10.6.1.210 ,再上传Upload.ZIP文件,最后退出psftp。前两步可以更改,也可以参照psftp的 命令加入新的操作。

     再此文件夹下新建start.BAT代码如下:

psftp -l administrator -pw 123  -b psftp_cmd.txt

exit

以上代码的两步操作为:打开psftp且带参数(用户名为administrator密码为123并且在psftp下批量执行psftp_cmd的命令),最后退出win32命令界面.

      以上操作后双击start.bat即可自动上传指定文件...

===========psftp 命令

PSFTP 是一个使用命令提供 SFTP client 功能的软件,免去了使用ssh crt之类的图像化工具。
我们看看psftp的工具使用帮助:
psftp -h
PuTTY Secure File Transfer (SFTP) client
Release 0.60
Usage: psftp [options] [user@]host
Options:
  -V        print version information and exit(打印版本)
  -pgpfp    print PGP key fingerprints and exit(打印pgp)
  -b file   use specified batchfile (读取格式化文件,按照文件格式执行命令,及预先要交互的命令都放到这个文件里)
  -bc       output batchfile commands (输出执行过的命令语句)
  -be       don't stop batchfile processing if errors(遇错跳过)
  -v        show verbose messages (详细回显)
  -load sessname  Load settings from saved session

            (使用预先保存好的sessname,保存在HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions)
  -l user   connect with specified username (用户名)
  -P port   connect to specified port (端口)
  -pw passw login with specified password (密码)
  -1 -2     force use of particular SSH protocol version (使用ssh协议)
  -4 -6     force use of IPv4 or IPv6  (支持ipv4 或ipv6)
  -C        enable compression (支持压缩格式,节省带宽)
  -i key    private key file for authentication
  -noagent  disable use of Pageant
  -agent    enable use of Pageant
  -batch    disable all interactive prompts 不允许交互命令

当连接到远程计算机以后,下面这几个命令就有用了,参考下,就可以了。

bye    结束 psftp
cd     改变远程服务器的目录。
chmod  改变远程服务器的文件或文件夹的权限及属性。
del    删除远程服务器上的文件。
dir    列出远程服务器上的所有文件和目录。
exit   结束 psftp
get    从远程服务器上下载指定文件。
help   使用帮助。
lcd    改变本地计算机的工作目录。
lpwd   显示本地计算机工作目录。
ls     列出远程服务器上的所有文件和目录。
mkdir  在远程服务器上建立一个目录。
mv     移动远程服务器上的文件或者改名。
open   连接指定的远程服务器。
put    把本地的文件上传到远程服务器上。
pwd    移动远程服务器上的文件或者改名。
quit   结束 psftp
reget  断点下仔未完的指定文件。
ren    移动远程服务器上的文件或者改名。
reput  断点上传未完的指定文件。
rm     删除远程服务器上的一个文件。
rmdir  删除远程服务器上的一个目录。

=========其它

PSFTP是Putty的一部分,可以单独使用,也可去http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html下载完整的Putty安装包。安装好之后,你就有了一套几乎完整的远程访问解决方案

PSFTP是一个支持SFTP协议的客户端程序。在Unix体验中心上传文件或者是维护SourceForge上的项目经常会使用SFTP。目前支持SFTP的客户端程序不少,像FileZilla、CoreFTP等等,都有Windows下的图形界面。PSFTP没有图形界面,一切都要使用命令来完成。有时候这种看似麻烦的方式反而效率更高。