scp远程传输文件命令

  • 发布时间:2017年7月3日 10:09
  • 作者:杨仕航

题外话:最近一直在查使用django-notifications-hq之后评论总是莫名其妙的丢失。已经将django升级到最新版本,还是有问题。近期打算把服务器迁到国内并用MySQL数据库试试。


由于我开发环境和生产环境都是Linux,有时个别特殊文件需要传输。当然如果你电脑是windows,可以使用XShell和XFtp。也可安装Git,通过Git使用Linux命令。


scp用法很简单,主要分3部分,如下所示:

scp 源文件路径 目标文件路径


第1部分,scp就不用说明了。scp是有Security的文件copy,基于ssh登录。设置好传输文件的路径之后,将会被要求输入登录密码。验证通过之后,才开始传输复制文件。

第2部分,源文件路径。该参数指的是要传输复制的文件,可以是本地的文件也可以是服务器的文件。

第3部分,目标文件路径。该参数指最终传输的位置(粘贴的位置),和源文件路径对应。若源文件路径是本地的,则该目标文件是服务器的。本地到服务器的传输,则为上传操作;

若源文件路径是服务器的,则该目标文件路径是本地位置。服务器到本地的传输,则为下载操作。


举个栗子,假设远程服务器地址为10.123.102.0(当然这个地址是我随便捏造的)。登录服务器用户名为root。现在需要将服务器路径为/src/doc/1.sql下载到本地。scp命令如下:

scp root@10.123.102.0:/src/doc/1.sql ~/Download/1.sql


执行该命令,在输入登录密码即可。其中源文件路径的服务器路径,格式比较固定,参照书写即可:

服务器路径  登录用户名@服务器地址:服务器文件路径


若我们将上面的参数反过来写:

scp ~/Download/1.sql root@10.123.102.0:/src/doc/1.sql


则变成将本地~/Download/1.sql文件上传到服务器。

scp其它参数我就不讲解。不知是否掌握scp基本用法?

重点理解scp是从源文件路径传输到目标文件。只要主要在本地执行(未登录服务器状态),以及服务器路径的写法即可。

上一篇:Django测试驱动开发

下一篇:我的网站搭建(第56天) 用户登录注册信息加密

评论列表

智慧如你,不想发表一下意见吗?

新的评论

清空