linux SCP命令查看同步数据进度?

linux SCP命令查看同步数据进度?,第1张

这只是通过ssh的拷贝命令。同步文件夹建议用rsync,比如rsync -aP [email protected]:/media/* [email protected]:/media/

scp是 secure copy的缩写, scp是 linux 系统下基于ssh登陆进行安全的远程文件拷贝命令。 linux 的scp命令可以在linux 服务器 之间复制文件和目录.

scp命令基本格式:

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]

[-l limit] [-o ssh_option] [-P port] [-S program]

[[user@]host1:]file1 [...] [[user@]host2:]file2

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命令的实际应用

本地复制远程文件:(把远程的文件复制到本地)

scp [email protected]:/val/test/test.tar.gz /val/test/test.tar.gz

远程复制本地文件:(把本地的文件复制到远程主机上)

scp /val/test.tar.gz [email protected]:/val/test.tar.gz

本地复制远程目录:(把远程的目录复制到本地)

scp -r [email protected]:/val/test/ /val/test/

远程复制本地目录:(把本地的目录复制到远程主机上)

scp -r /val/ [email protected]:/val/

注:复制的是目录的话就要加-r参数

当同时有多个服务器的文件要复制到本地目录:

scp [email protected]:/var/cp1.tar.gz [email protected]:/var/cp2.tar.gz /var/tmp/

注意:最后面的一个必需是目录,前面的必须是文件,才能成功批量复制,复制中会提示多次输入密码。

可怕的不是时间久,可怕的是未知。 在Linux下拷贝大文件要显示进度条,我百度了一下看到好多人的解决方法,要么是自己写一个程序,要么是使用scp或rsync这种软件来曲线救国。最近发现了一个软件还是比较好解决这个问题的,就是ranger。 ranger是一个命令行下的文件管理器,它就自带有进度条的功能。 在命令行下输入ranger就可以打开ranger了,ranger的快捷键基本上就是vim风格,所以我们需要复制文件的话,需要将光标移动到需要复制的文件上,然后按yy,就复制好了,然后到目标文件夹,按pp,就已经开始复制了,在页面最下方可以看到一个进度条。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7289723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存