-scp Linux之间复制文件和目录

scp 简介

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的。可能会稍微影响一下速度。当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用

命令格式

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

命令参数

-1 强制scp命令使用协议ssh1
-2 强制scp命令使用协议ssh2
-4 强制scp命令只使用IPv4寻址
-6 强制scp命令只使用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)的选项

使用实例

使用scp前提:两台服务器必须都安装 ssh

从本地服务器复制到远程服务器

复制文件

1234567891011
注意目标文件的权限: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

demo:scp test2_01.test dafei@192.168.1.113:/data/www/test/

第1,2个指定了用户名,命令执行后需要输入用户密码,
第1个仅指定了远程的目录,文件名字不变,
第2个指定了文件名
第3,4个没有指定用户名,命令执行后需要输 大专栏  -scp Linux之间复制文件和目录入用户名和密码(默认使用root),
第3个仅指定了远程的目录,文件名字不变,
第4个指定了文件名

复制目录

1234567
-r参数不要遗漏:【否则报错: not a regular file】scp -r local_folder remote_username@remote_ip:remote_folder或者scp -r local_folder remote_ip:remote_folder 

demo:scp -r test2 dafei@192.168.1.113:/data/www/test/

第1个指定了用户名,命令执行后需要输入用户密码;
第2个没有指定用户名,命令执行后需要输入用户名和密码(默认使用root);

从远程服务器复制到本地服务器

从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了

从远程拷贝文件到本地目录

123
scp root@remote_ip:remote_file local_folderdemo:scp dafei@192.168.1.87:/data/www/test2/test2_01.test  /data/www/test/

从远处复制目录到本地

123
scp -r root@remote_ip:remote_folder local_folderdemo:scp -r dafei@192.168.1.87:/data/www/test2 /data/www/test/

其他

expect-nt

原文地址:https://www.cnblogs.com/lijianming180/p/12259027.html

时间: 2024-08-06 06:17:51

-scp Linux之间复制文件和目录的相关文章

两个linux之间复制文件及目录

Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同,cp 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp 主要是在不同的Linux系统之间来回copy文件.scp即security cp,带有安全性的复制. 在两台linux机之间复制文件,我们打开其中任意一台即可,利用scp可实现两者之间文件目录的传输: 从本地服务器复制到远程服务器: (1) 复制文件: 命令格式: scp local_file [email protected]_

复制文件或目录linux命令

复制文件或目录命令:  复制文件:  (1)将本地文件拷贝到远程  scp 文件名用户名@计算机IP或者计算机名称:远程路径 本地192.168.1.8客户端  scp /root/install.* [email protected]:/usr/local/src (2)从远程将文件拷回本地  scp 用户名@计算机IP或者计算机名称:文件名本地路径 本地192.168.1.8客户端取远程服务器12.11上的文件  scp [email protected]:/usr/local/src/*.

跟鸟哥学Linux之——对文件与目录操作命令汇总

在Linux中对文件和目录的操作是一个最基本的技能,就如同我们在Windows下对翻看目录和对文件的一些基本使用方法一样的重要,如果说不会对目录和文件操作那么还谈何其他的操作呢.当然Linux中的图形化界面也是很容易操作,但是在文字化处理界面就需要使用到很多命令,下边是我对这些操作的一个汇总和整合,同时列出了一些基本常用的操作命令,当然本人列出的命令是不全面的,有其他的需要还需要请教巨人了,请看下图. 在该图中我分了四部分,分别是1.巨人.2.对文件的操作命令.3.对目录的操作命令.4.同时可以

linux下查看文件及目录个数

linux下查看文件及目录个数1.查看当前文件和目录总数(不包括子目录):ls -l | wc -l 2.查看当前目录下文件个数(不包括子目录):ls -l |grep "^-"|wc -l ===查看当前目录下文件个数(包括子目录)ls -lR |grep "^d" | wc -l 4.查看当前目录目录个数(包括子目录)ls -lR |grep "^d" | wc -l =====================================

linux下复制文件报cp: omitting directory `XXX'

错误操作:这个错误是因为在linux下我使用cp复制一个文件夹A到另一个目录下时报错cp: omitting directory `XXX' 原因:文件夹A中还有子目录文件,所以linux不允许直接复制,而是必须要把A文件夹中的子目录文件全部都要复制过去才行,所以使用cp时还得使用参数 -r. 例如:拷贝当前目录下的A文件夹到另一个文件夹B中:cp -r A ../B/ 同样的,如果遇到,要删除一个目录文件时,也必须要用-r 这个命令选项:rm -r A 从这里可以知道 -r  这个选项表示递归

[转] 使用SecureCRT的SFTP在WINDOWS与LINUX之间传输文件

使用SecureCRT的SFTP在WINDOWS与LINUX之间传输文件 参考文献: http://ice-k.iteye.com/blog/1068275 http://www.cnblogs.com/chen1987lei/archive/2010/11/26/1888391.html 背景: 有一台主机,安装了windows7,在其安装了virtualbox,然后安装了ubuntu虚拟机.在windows7上安装SecureCRT来ssh连接ubuntu虚拟机.一般在windows上面下载

Linux学习三 文件与目录管理

1 目录与路径 1.1 相对路径与绝对路径 绝对路径:路径的写法一定由根目录 / 写起. 相对路径:路径的写法不是由 / 写起. 1.2 目录的相关操作 . :代表此层目录 .. :代表上一层目录 - :代表前一个工作目录 ~ :代表目前用户身份所在的家目录 ~account :代表account用户的家目录 需注意的是:在所有目录下都存在 ./..,分别代表此层和上层目录.根目录下的 .. 目录与 . 目录是同一个. 常用处理目录的命令: cd:切换目录 pwd:显示当前目录 mkdir:建立

使用PSFTP实现Windows、Linux之间的文件传输

安装PuTTY时自动安装了PSFTP 使用PSFTP可以实现Winodws.Linux之间的文件传输. 打开PSFTP,输入Linux的ip地址,输入要登录的用户名.密码 Windows向Linux传文件: put D:\jdk-8u241-linux-x64.rpm /root/jdk-8u241-linux-x64.rpm put  本地文件路径  目标文件路径. 注意windows的文件路径用\,Linux的文件路径用/. 如果目标路径只写文件名,比如  put   D:\jdk-8u24

Linux删除乱码文件或者目录

Linux删除乱码文件或者目录 有时在Linux下面解压一些zip或者rar文件后会产生乱码文件或者目录,这个时候使用rm不能成功删除,需要使用一些特别的方法 来进行删除,下面是我经常使用的两种方法. 方法一: 使用rm -rf 删除上一级目录,当然前提是需要备份你需要备份的数据. 一种思路: 1. 比如/home下文件夹内含有乱码的文件 2. mkdir tmp 3. 将所有的文件首先移动到 mv * tmp/ 4.到tmp下 把所有有正常的显示字符的文件移动出来 cd tmp ; mv [a