本地文件路径:local_path
远程路径:remote_path
ssh上传数据:
scp -P 22 path_local username@IP:remote_path #上传单个文件
scp -P 22 -r path_local username@IP:remote_path #上传文件夹内所有文件
-P表示服务器端口号是多少,-r表示传输整个文件夹
ssh下载数据:
scp -P 22 username@IP:remote_path path_local #下载单个文件
scp -P 22 -r username@IP:remote_path path_local #下载文件夹内所有文件
个人比较推荐使用rsync传输数据,主要是由于在传输大文件的时候网络不稳定,会使得文件传输中断。
ssh不支持断点传送,会从头开始传输文件。而rsync支持断点传送,可以继续上次未完成的任务。
rsync上传数据:
rsync -rsh='ssh -p 22' -P path_local username@IP:remote_path #上传单个文件
rsync -rsh='ssh -p 22' -r -P path_local username@IP:remote_path #上传文件夹内所有文件
-rsh='ssh -p 22' ssh的连接方式,端口号22。 -P代表支持断点传输和显示进度条。
-P:代表支持断点传输和显示进度条。综合了--partial --progress两个参数
--partial
如果在拷贝文件的过程中,传输被中断,rsync的默认操作是撤消前操作,即从目标机上删除
已拷贝的部分文件。
如果想在下次拷贝时续传文件,不需要重新拷贝所有文件的话,可以使用-partial选项阻止
rsync在传输中断时删除已拷贝部分
--progress 显示进度条
rsync下载数据:
rsync -rsh='ssh -p 22' -P username@IP:remote_path path_local #下载单个文件
rsync -rsh='ssh -p 22' -r -P username@IP:remote_path path_local #下载文件夹内所有文件
不过可以开一个后台运行更稳定。。。
screen