Linux scp命令

        scp全称为secure copy,即安全拷贝,是Linux下进行远程拷贝文件的命令。与其相似的命令是cp和rsync,cp只是在本机进行拷贝不能跨服务器,rsync比较占用资源,虽然会比scp快,但是在小文件众多的情况下,rsync会导致磁盘I/O非常高,而scp则可以进行跨服务器传输,并且传输时加密的,同时不会消耗多少系统资源。

        

        语法

        scp [参数] [原路径] [目标路径]

        参数解释

        -1  强制使用协议ssh1  
        -2  强制使用协议ssh2  
        -4  强制只使用IPv4寻址  
        -6  强制只使用IPv6寻址  
        -B  使用批处理模式(传输过程中不询问传输口令或短语)  
        -C  允许压缩。(将-C标志传递给ssh,从而打开压缩功能)  
        -p 保留原文件的修改时间,访问时间和访问权限。  
        -q  不显示传输进度条。  
        -r  递归复制整个目录。  
        -v 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。   
        -c cipher  以cipher将数据传输进行加密,这个选项将直接传递给ssh。   
        -F ssh_config  指定一个替代的ssh配置文件,此参数直接传递给ssh。  
        -i identity_file  从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。    
        -l limit  限定用户所能使用的带宽,以Kbit/s为单位。     
        -o ssh_option  如果习惯于使用ssh_config(5)中的参数传递方式,   
        -P port  注意是大写的P, port是指定数据传输用到的端口号   
        -S program  指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

        使用示例

        两台服务器:server1、server2

        分别进入/usr/local目录,如下图所示:

        server1

        server3

        1、从本地拷贝文件至远程服务器

        (1)将server1上/usr/local/url.txt文件拷贝至server3的相同目录下,不显示指定server3的用户名,默认与server1当前登录用户一样,为hadoop

        scp命令

        拷贝后,显示的url.txt所属用户和组均为hadoop,且文件名与server1一致

        (2)将server1上/usr/local/url.txt文件拷贝至server3的相同目录下,显示指定server3的用户名root(之前已删除url.txt文件)

        scp命令

        拷贝后,显示的url.txt所属用户和组均为root,且文件名与server1一致

        (3)将server1上/usr/local/url.txt文件拷贝至server3的相同目录下,显示指定server3的用户名root,并将文件重命名为urltemp.txt

        scp命令

        拷贝后,显示的urltemp.txt所属用户和组均为root,且文件名为urltemp.txt

       2、从远程服务器拷贝文件至本地

        (1)将server3上/usr/local/urltemp.txt文件拷贝至server1的相同目录下,并重命名为urltemp2.txt

        scp命令

        拷贝后,显示的urltemp2.txt所属用户和组均为hadoop,且文件名为urltemp2.txt

       3、从本地拷贝文件夹至远程服务器(已提前准备好urltmp文件夹)

        (1)将server1上/usr/local/urltemp文件夹拷贝至server3的目录/usr/local下

        scp命令

        拷贝后,server3的/usr/local目录下就有了一个tmp文件夹

        4、从远程服务器拷贝文件夹至本地(server1已删除urltemp文件夹)

        (1)将server3上/usr/local/urltemp文件夹拷贝至server1的目录/usr/local下

        scp命令

        拷贝后,server1的/usr/local/下存在一个urltemp文件夹,且所属用户和组全部为hadoop

        5、拷贝文件夹的特殊例子

        将server1上/usr/local/utltemp文件夹分别拷贝至server3上/usr/local/urltmp3和/usr/local/urltmp3/下,前者为拷贝至目录local/下,并重命名为urltmp3,后者为拷贝至目录urltmp3/下

        scp命令

        拷贝后,urltmp3下既存在原urltmp文件夹下的三个文件,又存在urltmp文件夹

时间: 2024-10-29 13:04:42

Linux scp命令的相关文章

linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例【转】

转自:http://blog.csdn.net/jiangkai_nju/article/details/7338177 一般情况,本地网络跟远程网络进行数据交抱,或者数据迁移,常用的有三种方法,一是ftp,二是wget /fetch 三是,rsync 大型数据迁移用rysync,其次用fetch/wget ,最次是ftp,最慢是ftp.这几天,在忙数据迁移时,用到ssh的scp方法来迁移数据.速度与效果都很好.特别是现在许多服务器为了安全,都会改ssh默认的22端口,改成一个特殊的端口.所以.

Linux SCP命令远程拷贝复制大数据网站文件快速搬家命令例子

如果数据文件比较大,单单依靠压缩.转移托转等工序也是可行的,其实我们也可以使用SCP命令进行服务器之间的拖动,这个也是我们在Linux服务器之间网站数据文件的拖动转移,而且并不需要压缩直接将指定目录下的所有文件都拖过去,比如数据文件有几个GB,通过打包压缩.拖动解压比较耗费时间,直接利用SCP命令就很简单的实现. 我们熟悉的CP命令只能适合当前VPS服务器的目录之间的复制转移,SCP可以进行服务器之间的远程拷贝文件,而且速度更快,而且传输过程是加密的.在这篇文章中,老蒋将会整理和演练SCP命令的

linux中scp命令和scp命令用法大全_linux shell

scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证.与rcp不同的是,scp会要求你输入密码如果需要的话. svn 删除所有的 .svn文件 find . -name .svn -type d -exec rm -fr {} \; linux之cp/scp命令+scp命令详解   名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source

Linux下scp 命令实现文件复制示例

 复制文件:   (1)将本地文件拷贝到远程 scp 文件名 root@59.64.28.78:远程路径 (2)从远程将文件拷回本地 scp root@59.64.28.78:文件名 本地路径 复制目录: (1)将本地目录拷贝到远程 scp -r 目录名 root@59.64.28.78:远程路径 (2)从远程将目录拷回本地 scp -r root@59.64.28.78:目录名 本地路径. 例子 拷贝远程文件到本地 scp root@192.168.0.1:/home/database.php

Linux强大的scp命令学习笔记详解

scp的用法 从 本地 复制到 远程 命令基本格式: scp [可选参数] 本地文件名 远程用户名@远程地址:远程文件或目录 复制文件例子: scp /home/backup.zip root@www.example.com:/home/others/backup scp /home/backup.zip root@www.example.com:/home/others/otherbackup.zip 第一个是本地文件backup.zip发送到远程backup目录下. 第二个是本地文件back

linux-Linux SCP 命令求解?

问题描述 Linux SCP 命令求解? 怎样做到从root用户上传一个目录到一个普通用户的根目录下,然后属主不改变.原来那个文件的属主不是root!但上传后发现属主变为root了.求大神解答. 解决方案 你可以自己再用chown等来修改一下属性.或者不用root用户 ,用两个机器的相同用户 解决方案二: Linux命令之scpLinux SCP命令linux scp 命令

scp命令详解(全)_linux shell

svn 删除所有的 .svn文件 复制代码 代码如下: find . -name .svn -type d -exec rm -fr {} \; linux之cp/scp命令+scp命令详解   名称:cp 使用权限:所有使用者 使用方式: cp [options] source dest cp [options] source... directory 说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录. 把计 -a 尽可能将档案状态.权限等资料都照原状予以复制. -r 若 sourc

Linux中cp和scp命令的使用方法

  Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的Linux系统之间来回copy文件 关于cp的具体用法: 命令基本格式: cp [OPTIONS] SOURCE DEST --- 从源路径copy文件到目的路径 cp [OPTIONS] SOURCE... DIRECTORY --- 将多个源文件copy到指定的目录(多个源文件用空格分隔)

在 Linux 下使用 scp 命令

scp 是安全拷贝协议Secure Copy Protocol的缩写,和众多 Linux/Unix 使用者所熟知的拷贝(cp)命令一样.scp 的使用方式类似于 cp 命令,cp 命令将一个文件或文件夹从本地操作系统的一个位置(源)拷贝到目标位置(目的),而 scp 用来将文件或文件夹从网络上的一个主机拷贝到另一个主机当中去. scp 命令的使用方法如下所示,在这个例子中,我将一个叫 "importantfile" 的文件从本机(10.10.16.147)拷贝到远程主机(10.0.0.