哪位兄弟用过filezilla命令行下载???????????????

解决方案 »

  1.   

    FileZilla Client - 远程登录liunx 设置自动登录密钥 及文件传输
    http://hi.baidu.com/yibite/blog/item/d7686163378176d4e6113a0e.html  用 SSH 来传输文件
    PuTTY 提供了两个文件传输工具
    PSCP (PuTTY Secure Copy client) 
    PSFTP (PuTTY SFTP client) 
    PSCP 通过 SSH 连接,在两台机器之间安全的传输文件,可以用于任何 SSH(包括 SSH v1、SSH v2) 服务器。
    PSFTP 则是 SSH-2 中新增的特性,使用的是新的 SFTP 协议,使用上与传统的 FTP 类似。事实上 PSCP 如果发现 SFTP 可用,PSCP就会使用 SFTP 协议来传输文件,否则还是 SCP 协议。PSFTP 与 PSCP 相比,PSFTP 的优点是可以与服务器进行交互,遍历服务器上的文件系统,在一个会话中上传或下载多个文件。而 PSCP 只能一次传输一个文件,传输完毕后立刻终止会话。
    PSCP 的使用
    在控制台直接执行 pscp 可以看到帮助
    C:\>pscp
    PuTTY Secure Copy client
    Release 0.58
    Usage: pscp [options] [user@]host:source target
          pscp [options] source [source...] [user@]host:target
          pscp [options] -ls [user@]hostilespec
    Options:
    -V        print version information and exit
    -pgpfp    print PGP key fingerprints and exit
    -p        preserve file attributes
    -q        quiet, don't show statistics
    -r        copy directories recursively
    -v        show verbose messages
    -load sessname Load settings from saved session
    -P port  connect to specified port
    -l user  connect with specified username
    -pw passw login with specified password
    -1 -2    force use of particular SSH protocol version
    -4 -6    force use of IPv4 or IPv6
    -C        enable compression
    -i key    private key file for authentication
    -batch    disable all interactive prompts
    -unsafe  allow server-side wildcards (DANGEROUS)
    -sftp    force use of SFTP protocol
    -scp      force use of SCP protocol
    C:\>
    可以看出 PSCP 的使用是很简单的,把常用的几个选项说一下:
    -q 安静模式,传输文件时什么也不显示,否则会显示出文件的传输进度,默认是关闭的 
    -P port 指定服务器的 SSH 端口,注意这个是大写字母 P,默认是 -P 22,如果主机的 SSH 端口就是 22,就不用指定了 
    -l user 指定以哪个用户的身份登录主机,如果没有指定,则 PSCP 会在 PuTTY 保存的同名 Session 中获得默认的用户名称。用户名称也可以和主机名称写在一起,用 @ 分割开,比如:username@server 
    -pw passwd 指定登录时所用的口令为 passwd 
    -i keyfile 就是指定登录时所用的密钥文件 
    最后面指定的主机名也可以是 PuTTY 中保存的 Session 名称。比如我们在 PuTTY 中保存了一个名为 foobarserver 的会话,而我们所在的网络又的确没有名为 foobarserver 的主机名称。而在这个 foobarserver 会话中保存的主机名称是 demo-server,保存的自动登录的用户是 taylor。那么用命令
    pscp c:\autoexec.bat foobarserver:backup/
    就把本 地的 c:\autoexec.bat 复制到了主机 demo-server 上的用户 taylor 所在的主目录下的 backup 子目录中(这个路径可能是 /home/taylor/backup
    所以 PSCP 大致用法的例子就是:
    pscp -P 22 -i c:\path\your-private-key.ppk -C username@server:/remote/path/
    下面还是用一些实例来说明会比较简单一些:
    把本地的 C:\path\foo.txt 复制到远程主机 192.168.6.200 的 /tmp 目录下
    pscp c:\path\foo.txt 192.168.6.200:/tmp
    把本地的 C:\path\foo.txt 复制到主机 192.168.6.200 的 /tmp 目录下,但是以主机上的用户 taylor 的权限执行
    pscp c:\path\foo.txt [email protected]:/tmp
    或者是
    pscp -l taylor c:\path\foo.txt 192.168.6.200:/tmp
    把本地的 C:\path\foo.txt 传送到主机 192.168.6.200 的 /tmp 目录下,但是主机的 SSH 端口是 3122
    pscp -P 3122 c:\path\foo.txt 192.168.6.200:/tmp
    把本地的 C:\path\foo.txt 复制到主机 192.168.6.200 的用户 taylor 的主目录下
    pscp c:\path\foo.txt [email protected]:.
    把主机 192.168.6.200 上的用户 taylor 主目录下的所有 *.tgz 文件拷贝到本地的 c:\backup 目录中,如果 SSH 版本是 SSH v1,那这个命令就会出错。
    pscp [email protected] c:\backup
    再来看看 PSFTP
    在控制台执行命令 psftp -h,可以得到 psftp 的帮助
    C:\>psftp -h
    PuTTY Secure File Transfer (SFTP) client
    Release 0.58
    Usage: psftp [options] [user@]host
    Options:
    -V        print version information and exit
    -pgpfp    print PGP key fingerprints and exit
    -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
    -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
    -4 -6    force use of IPv4 or IPv6
    -C        enable compression
    -i key    private key file for authentication
    -batch    disable all interactive prompts
    C:\>
    用法与 PSCP 大同小异,虽然有个 -load 选项,其实这个没啥用,后面用主机名的时候,与 PSCP 一样直接用上会话名称就可以了。
    用 PSFTP 登录到服务器上以后,操作与 FTP 差不多,这里简单的说一下吧:
    open 登录主机
    open [username@] [port]
    比如: 
    open taylor@demo-server 3022
    就是以用户 taylor 的身份,登陆到主机 demo-server 上,SSH 端口是 3022 
    open demo-server
    登陆 demo-server,这里的 demo-server 可以是PuTTY 中已经保存的会话名称,也可以是主机的名称,如果主机名称与会话名称相同,以会话名称为准。 
    close 关闭 SFTP 连接
    这个没啥说的,close 就关闭了 SFTP 连接 
    quit 结束本次的 SFTP 会话
    也没啥用法,就是关闭了 PSFTP 这个程序 
    help [command] 帮助
    直接打 help 就可以看到帮助指令,后面指定上 一个命令就可以查看该命令的帮助,比如: help open 
    cd [directory] 改变当前目录 
    pwd 察看当前目录 
    lcd [directory] 改变本地目录 
    lpwd 察看本地当前目录 
    get [-r]  从服务器下载一个文件/目录,这个命令不能用通配符,参数 -r 可以递归下载整个目录 
    put [-r]  [dest] 把文件/目录上传到服务器,这个命令不能用通配符,参数 -r 可以递归上传整个目录 
    mget [-r]  从服务器下载一批文件/目录,可以用通配符,-r 的含义与 get 一样 
    mget [-r]  [dest] 把一批文件/目录上传到服务器,可以用通配符,-r 的含义与 put 一样 
    reget [-r]  从服务器续传下载一个文件/目录,这个命令不能用通配符,-r 的含义与 get 一样 
    reput [-r]  [dest] 把一批文件/目录续传上传到服务器,这个命令不能用通配符,-r 的含义与 put 一样 
    dir [directory] 列目录 
    ls 和 dir 一样 
    chmod [file|directory] 改变文件的权限,与 Unix 的 chmod 命令类似 
    del  删除文件,要注意的是 del 只能删除文件 
    rm 与 del 一样 
    mkdir  创建一个目录 
    rmdir  删除一个空目录,只有空目录才可以被删除 
    mv  改名/移动。如果源和目的都是文件或目录,则是改名。如果目的是目录的话,则是移动。 
    ! 在本地命令前加一个感叹号,就可以直接执行
      其他可选的 SFTP 客户端 
    FileZilla : http://filezilla.sf.net
    WinSCP : http://www.winscp.net 文章来源:http://blog.163.com/yangming_bk@126/blog/static/16341038120101163191694/ 
    搜索更多相关主题的帖子: Client FileZilla