一、传文件方式
1. scp:最像"复制文件"
本地传到服务器
scp file.txt user@server:/home/user/
服务器传到本地
scp user@server:/home/user/file.txt .
指定端口
scp -P 60005 file.txt user@server:/home/user/
注意这里是大写 -P,不是小写。
带目录传输
scp -r mydir user@server:/home/user/
2. sftp:像远程文件管理
进入交互模式:
sftp user@server
进去后常用命令:
ls
cd /home/user
get file.txt
put local.txt
mkdir test
如果改端口:
sftp -P 60005 user@server
它更像"远程文件浏览器"。
3. rsync over SSH:最适合同步大量文件
rsync -avz -e "ssh -p 60005" ./data/ user@server:/home/user/data/
优点:
-
只传差异部分
-
适合反复同步
-
大目录很好用
二、示例
传一个文件到服务器
scp report.pdf user@server:/home/user/
从服务器下载文件
scp user@server:/home/user/report.pdf .
传整个目录
scp -r ./project user@server:/home/user/
用 SFTP 交互上传
sftp user@server
put data.csv
get result.csv
用 rsync 同步代码目录
rsync -avz -e ssh ./code/ user@server:/home/user/code/