FTP如何进行批量上传,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
FTP默认的文件传输方式是基于 ASCII 码的,如果要以二进制格式传输文件,那么要先输入 bin 命令,然后再用put 或 get 命令。
1、如果需要传输一个目录里的所有文件,那么可以使用 mput 或 mget 命令来替代 put 或 get 命令。
注意:需要使用prompt off命令,来关闭交互模式,避免每次输Y确认。
2、如果需要定时传输文件,可以通过脚本来实现。
#!/bin/sh
ftp -n<<!
open xxx.xxx.xxx.xxx
user USERNAME PASSWORD
binary
prompt off
cd /yourpath
mput *.archive
close
bye
!
将这个脚本加入到crontab中即可实现定时ftp自动传输!
0 23 * * 6 /usr/local/chuanshu.sh
上面的这句,表示每星期六的23 : 00 执行ftp自动传输。
3、如果在一个目录下,文件数量过多,不建议你批量上传整个目录下的文件,首先是上传速度会慢,另外还有可能造成文件损坏。建议是先tar打包后直接上传这个文件压缩包,然后再解压比较稳妥。
补充:如果想了解更多FTP命令,可以键入
ftp> help (回车)
查看命令集:
ascii: 设定以ASCII方式传送文件(缺省值)
bell: 每完成一次文件传送,报警提示
binary: 设定以二进制方式传送文件
bye: 终止主机FTP进程,并退出FTP管理方式
case: 当为ON时,用MGET命令拷贝的文件名到本地机器中,全部转换为小写字母
cd: 同UNIX的CD命令
cdup: 返回上一级目录
chmod: 改变远端主机的文件权限
close: 终止远端的FTP进程,返回到FTP命令状态,所有的宏定义都被删除
delete: 删除远端主机中的文件
dir [remote-directory] [local-file]: 列出当前远端主机目录中的文件.如果有本地文件,就将结果写至本地文件
get [remote-file] [local-file]: 从远端主机中传送至本地主机中
help [command]: 输出命令的解释
lcd: 改变当前本地主机的工作目录,如果缺省,就转到当前用户的HOME目录
ls [remote-directory] [local-file]: 同DIR
macdef: 定义宏命令
mdelete [remote-files]: 删除一批文件
mget [remote-files]: 从远端主机接收一批文件至本地主机
mkdir directory-name: 在远端主机中建立目录
mput local-files: 将本地主机中一批文件传送至远端主机
open host [port]: 重新建立一个新的连接
prompt: 交互提示模式 off on
put local-file [remote-file]: 将本地一个文件传送至远端主机中
pwd: 列出当前远端主机目录
quit: 同BYE
recv remote-file [local-file]: 同GET
rename [from] [to]: 改变远端主机中的文件名
rmdir directory-name: 删除远端主机中的目录
send local-file [remote-file]: 同PUT
status: 显示当前FTP的状态
system: 显示远端主机系统类型
user user-name [password] [account]: 重新以别的用户名登录远端主机
关于FTP如何进行批量上传问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。