这篇文章将为大家详细讲解有关命令行中scp命令怎么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
scp 全称为secure copy,它能够对文件加密后进行服务器之间,或者同一服务器不同用户之间的传输。scp默认使用和ssh一样的22端口来通信,有的服务器为了防止攻击会更改这个端口号。
命令格式
scp [参数] [原路径] [目标路径]
具体例子
1. 从本地服务器复制到远程服务器,下面的命令表示把t1.fasta从本地拷贝到202.202.202.202这个服务器的zbl用户的home主目录下。
$ scp t1.fasta zbl@202.202.202.202:~/
2. 也可以复制整个文件夹到远程服务器,加入-r参数。下面的命令表示把t2_dir文件夹及里面的所有文件拷贝过去了
$ scp -r t2_dir zbl@202.202.202.202:~/
3. 同样的,也可以从远程服务器负责到本地。只需要把顺序调换一下即可。下面的命令表示把远程服务器zbl主目录下的t2_dir文件夹复制到本地路径下(“.”表示本地当前路径)
$ scp -r zbl@202.202.202.202:~/t2_dir .
4. 本地服务器上从一个用户复制到另一个用户。下面的命令表示把文件从本地用户复制给使用同一个服务器的zbl,把ip改为localhost即可
$ scp t1.fasta zbl@localhost:~/
注意如果服务器由于安全原因,scp需要走特殊端口,使用-P参数,后面跟上对应的端口就行。
命令参数
-
-1 强制scp命令使用协议ssh2
-
-2 强制scp命令使用协议ssh3
-
-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命令怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/208322.html