在CentOS系统中,使用SFTP(SSH File Transfer Protocol)进行批量文件传输可以通过多种方式实现。以下是一些常用的方法:
mput
命令连接到SFTP服务器:
sftp username@hostname
进入批量传输模式:
在SFTP提示符下,使用mput
命令来指定要上传的文件或目录。
mput /path/to/local/directory/*
或者指定单个文件:
mput /path/to/local/file
确认传输:
SFTP会列出所有要传输的文件,并提示你确认是否继续。输入yes
并按回车键。
scp
命令(适用于从本地到远程)如果你需要从本地机器批量传输文件到远程CentOS服务器,可以使用scp
命令。
scp -r /path/to/local/directory/* username@hostname:/path/to/remote/directory/
或者指定单个文件:
scp /path/to/local/file username@hostname:/path/to/remote/directory/
rsync
命令(适用于双向同步)rsync
是一个非常强大的文件传输工具,支持增量传输和双向同步。
rsync -avz /path/to/local/directory/ username@hostname:/path/to/remote/directory/
或者从远程同步到本地:
rsync -avz username@hostname:/path/to/remote/directory/ /path/to/local/directory/
你可以编写一个简单的脚本来自动化批量文件传输过程。例如,使用Bash脚本:
#!/bin/bash
# 定义变量
LOCAL_DIR="/path/to/local/directory"
REMOTE_DIR="/path/to/remote/directory"
USERNAME="username"
HOSTNAME="hostname"
# 连接到SFTP服务器并执行批量上传
sftp $USERNAME@$HOSTNAME <<EOF
cd $REMOTE_DIR
mput $LOCAL_DIR/*
bye
EOF
保存脚本为upload.sh
,然后赋予执行权限并运行:
chmod +x upload.sh
./upload.sh
scp
和rsync
时,注意目标路径是否存在,如果不存在,可以提前创建。rsync
的增量传输功能以提高效率。通过以上方法,你可以在CentOS系统中方便地进行批量文件传输。