scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行
拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system
时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远
不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响
系统正常使用。
.命令格式:
scp [参数] [原路径] [目标路径]
.命令功能:
scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在
linux服务器之间复制文件和目录。
.命令参数:
- 强制scp命令使用协议ssh1
- 强制scp命令使用协议ssh2
- 强制scp命令只使用IPv4寻址
- 强制scp命令只使用IPv6寻址
-B 使用批处理模式(传输过程中不询问传输口令或短语)
-C 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)
-p 保留原文件的修改时间,访问时间和访问权限。
-q 不显示传输进度条。
-r 递归复制整个目录。
-v 详细方式显示输出。scp和ssh()会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。
-c cipher 以cipher将数据传输进行加密,这个选项将直接传递给ssh。
-F ssh_config 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i identity_file 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。
-l limit 限定用户所能使用的带宽,以Kbit/s为单位。
-o ssh_option 如果习惯于使用ssh_config()中的参数传递方式,
-P port 注意是大写的P, port是指定数据传输用到的端口号
-S program 指定加密传输时所使用的程序。此程序必须能够理解ssh()的选项。
.使用实例:
scp命令的实际应用概述:
从本地服务器复制到远程服务器:
() 复制文件:
命令格式:
scp local_file remote_username@remote_ip:remote_folder
或者
scp local_file remote_username@remote_ip:remote_file
或者
scp local_file remote_ip:remote_folder
或者
scp local_file remote_ip:remote_file
第1,2个指定了用户名,命令执行后需要输入用户密码,第1个仅指定了远程的目录,文件名字不变,第2个指定了
文件名
第3,4个没有指定用户名,命令执行后需要输入用户名和密码,第3个仅指定了远程的目录,文件名字不变,第4个
指定了文件名
() 复制目录:
命令格式:
scp -r local_folder remote_username@remote_ip:remote_folder
或者
scp -r local_folder remote_ip:remote_folder
第1个指定了用户名,命令执行后需要输入用户密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码; 从远程服务器复制到本地服务器:
从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。
实例1:从远处复制文件到本地目录
命令:
scp root@192.168.120.204:/opt/soft/nginx-0.5..tar.gz /opt/soft/
输出:
复制代码
[root@localhost ~]# cd /opt/soft/
[root@localhost soft]# ll
总计
drwxr-xr-x root root - : fms3.
drwxr-xr-x root root - : fms4.
drwxr-xr-x root root - : jdk1..0_16
drwxr-xr-x root root - : jdk1..0_16.bak
-rwxr-xr-x root root -- jdk-6u16-linux-x64.bin
drwxrwxrwx root root - : mysql
drwxr-xr-x root root - : setup_file
drwxr-xr-x root root - : tomcat6.0.32
drwxr-xr-x root root -- tomcat_7.
[root@localhost soft]# scp root@192.168.120.204:/opt/soft/nginx-0.5..tar.gz /opt/soft/
root@192.168.120.204's password:
nginx-0.5..tar.gz % 479KB .7KB/s :
[root@localhost soft]# ll
总计
drwxr-xr-x root root - : fms3.
drwxr-xr-x root root - : fms4.
drwxr-xr-x root root - : jdk1..0_16
drwxr-xr-x root root - : jdk1..0_16.bak
-rwxr-xr-x root root -- jdk-6u16-linux-x64.bin
drwxrwxrwx root root - : mysql
-rw-r--r-- root root - : nginx-0.5..tar.gz
drwxr-xr-x root root - : setup_file
drwxr-xr-x root root - : tomcat6.0.32
drwxr-xr-x root root -- tomcat_7.
[root@localhost soft]#
复制代码
说明:
从192.168.120.204机器上的/opt/soft/的目录中下载nginx-0.5..tar.gz 文件到本地/opt/soft/目录中
实例2:从远处复制到本地
命令:
scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/
输出:
复制代码
[root@localhost soft]# ll
总计
drwxr-xr-x root root - : fms3.
drwxr-xr-x root root - : fms4.
drwxr-xr-x root root - : jdk1..0_16
drwxr-xr-x root root - : jdk1..0_16.bak
-rwxr-xr-x root root -- jdk-6u16-linux-x64.bin
drwxrwxrwx root root - : mysql
-rw-r--r-- root root - : nginx-0.5..tar.gz
drwxr-xr-x root root - : setup_file
drwxr-xr-x root root - : tomcat6.0.32
drwxr-xr-x root root -- tomcat_7.
[root@localhost soft]# scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/
root@192.168.120.204's password:
mongodb-linux-i686-static-1.8..tgz % 28MB .3MB/s :
README % .7KB/s :
THIRD-PARTY-NOTICES % .7KB/s :
mongorestore % 7753KB .6MB/s :
mongod % 7760KB .6MB/s :
mongoexport % 7744KB .6MB/s :
bsondump % 7737KB .6MB/s :
mongofiles % 7748KB .6MB/s :
mongostat % 7808KB .6MB/s :
mongos % 5262KB .1MB/s :
mongo % 3707KB .6MB/s :
mongoimport % 7754KB .6MB/s :
mongodump % 7773KB .6MB/s :
GNU-AGPL-3.0 % 34KB .7KB/s :
[root@localhost soft]# ll
总计
drwxr-xr-x root root - : fms3.
drwxr-xr-x root root - : fms4.
drwxr-xr-x root root - : jdk1..0_16
drwxr-xr-x root root - : jdk1..0_16.bak
-rwxr-xr-x root root -- jdk-6u16-linux-x64.bin
drwxr-xr-x root root - : mongodb
drwxrwxrwx root root - : mysql
-rw-r--r-- root root - : nginx-0.5..tar.gz
drwxr-xr-x root root - : setup_file
drwxr-xr-x root root - : tomcat6.0.32
drwxr-xr-x root root -- tomcat_7.
[root@localhost soft]#
复制代码
说明:
从192.168.120.204机器上的/opt/soft/中下载mongodb 目录到本地的/opt/soft/目录来。
实例3:上传本地文件到远程机器指定目录
命令:
scp /opt/soft/nginx-0.5..tar.gz root@192.168.120.204:/opt/soft/scptest
输出:
复制代码
上传前目标机器的目标目录:
[root@localhost soft]# cd scptest/
[root@localhost scptest]# ll
总计
[root@localhost scptest]# ll 本地机器上传:
[root@localhost soft]# scp /opt/soft/nginx-0.5..tar.gz root@192.168.120.204:/opt/soft/scptest
root@192.168.120.204's password:
nginx-0.5..tar.gz % 479KB .7KB/s :
[root@localhost soft]# 上传后目标机器的目标目录:
[root@localhost scptest]# ll
总计
-rw-r--r-- root root - : nginx-0.5..tar.gz
[root@localhost scptest]#
复制代码
说明:
复制本地opt/soft/目录下的文件nginx-0.5..tar.gz 到远程机器192.168.120.204的opt/soft/scptest目录
实例4:上传本地目录到远程机器指定目录
命令:
scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest
输出:
复制代码
上传前目标机器的目标目录:
[root@localhost ~]# cd /opt/soft/scptest/
[root@localhost scptest]# ll
总计
-rw-r--r-- root root - : nginx-0.5..tar.gz
[root@localhost scptest]#
本地机器上传:
[root@localhost ~]# scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest
root@192.168.120.204's password:
mongodb-linux-i686-static-1.8..tgz % 28MB .3MB/s :
README % .7KB/s :
THIRD-PARTY-NOTICES % .7KB/s :
mongorestore % 7753KB .6MB/s :
mongod % 7760KB .6MB/s :
mongoexport % 7744KB .6MB/s :
bsondump % 7737KB .6MB/s :
mongofiles % 7748KB .6MB/s :
mongostat % 7808KB .6MB/s :
mongos % 5262KB .1MB/s :
mongo % 3707KB .6MB/s :
mongoimport % 7754KB .6MB/s :
mongodump % 7773KB .6MB/s :
GNU-AGPL-3.0 % 34KB .7KB/s :
[root@localhost ~]# 上传后目标机器的目标目录:
[root@localhost scptest]# ll
总计
drwxr-xr-x root root - : mongodb
-rw-r--r-- root root - : nginx-0.5..tar.gz
[root@localhost scptest]#
复制代码
说明:
上传本地目录 /opt/soft/mongodb到远程机器192.168.120.204上/opt/soft/scptest的目录中去

linux命令学习笔记(60):scp命令的更多相关文章

  1. linux命令学习笔记( 2 ) : cd 命令

    Linux cd 命令可以说是Linux中最基本的命令语句,其他的命令语句要进行操作,都是建立在使用 cd 命令上的. 所以,学习Linux 常用命令,首先就要学好 cd 命令的使用方法技巧. . 命 ...

  2. linux命令学习笔记( 7 ) : mv 命令

    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令, 经常用来备份文件或者目录. .命令格式: mv [选项] 源文件或目 ...

  3. Linux基础学习笔记以及常用命令

    1.windows自带命令进入mysql所在磁盘   2.进入mysql安装目录的bin文件 D:\>cd D:\Program Files (x86)\mysql-5.5.25-winx64\ ...

  4. linux命令学习笔记(62)-curl命令-url下载工具

    linux curl是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合 传输工具,但按传统,习惯称url为下载工具. 一,curl命令参数,有好多我没有用过,也不知道 ...

  5. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  6. linux基础命令学习笔记(二)

    linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ...

  7. linux命令学习笔记(25):linux文件属性详解

    Linux 文件或目录的属性主要包括:文件或目录的节点.种类.权限模式.链接数量.所归属的用户和用户组. 最近访问或修改的时间等内容.具体情况如下: 命令: ls -lih 输出: [root@loc ...

  8. Linux必学的60个命令

    inux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要想 ...

  9. 【转】linux 必须掌握的60个命令

    Linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作.文件存取.目录操作.进程管理.文件权限设定等.所以,在Linux系统上工作离不开使用系统提供的命令.要 ...

随机推荐

  1. Linux5_环境变量

    1.总结背景 在linux系统下,下载并安装了应用程序,很有可能在键入它的名称时出现“command not found”的提示内容. 每次都到安装目标文件夹内,找到可执行文件来进行操作就太繁琐了.这 ...

  2. unity一些知识

    有一个问题就是在Inspector面板修改 WheelNumber的数值后,运行项目,当项目停止的时候,WheelNumber 的数据又回到以前的数据,(数据未保存成功,数据丢失) 解决办法需要在 修 ...

  3. "ORA-01012: not logged on"以及"Connected to an idle instance."解决思路

    今天测试用的ORACLE服务器出现卡顿情况,于是准备重启一下,在运行shutdown指令关闭数据库的时候意外断开连接,后面想再次进入ORACLE服务器启动时便遇见如下报错: 使用sqlplus /no ...

  4. Django 模型系统(model)&ORM--基础

    ORM 映射关系: 类 ---> 表 属性 ---> 字段 对象 --->一条数据 创建表(建立模型) 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作 ...

  5. Linux系统监控的几个命令

    uptime 系统时间.运行时间.连接数(没一个终端算一个连接).在1,5,15分钟内系统负载 uname -a    查看系统所有相关信息 -r     查看系统内核版本 -s    查看系统内核名 ...

  6. Android 部分机型在三星S3上面出现了,sqlite莫名其名的锁住的问题

    今天在使用安卓三星S3开发时.发现数据库老是锁住,其它机型并未出现锁住的问题,查看数据库所在的目录发现,和db文件同名的多出了一个文件以-journal结尾的莫名其妙的文件,怀疑是这个导致的所以在程序 ...

  7. spring启动quartz定时器

    在很多中经常要用到定时任务,quartz是定时器中比较好用的,在Spring中使用quartz是很容易的事情,首先在spring的applicationContext.xml文件中增加如下配置: &l ...

  8. rtpdataheader.h

    #ifndef RTPDATAHEADER_H #define RTPDATAHEADER_H // For 32bit intel machines typedef short int16; typ ...

  9. Linux vim 中文显示乱码解决方法

    因为在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打开会成乱码.改动了一下配置文件,使vi支持gb编码就好了.$vi ~/.vimrclet &a ...

  10. vmware虚拟机安装MAC OSX10.10Yosemite简要记录

    vmware所在环境为win7 64位系统,intel4核CPU,16G内存. 本人安装的是OSX10.10Yosemite的CDR镜像. 1. 在服务中停止所有vmware服务. 2. 安装unlo ...