scp常用命令:
1. 复制本地文件到远端服务器
复制文件:
scp local_file remote_username@remote_ip:remote_folder
复制目录:
scp -r local_folder remote_username@remote_ip:remote_folder
2. 复制远端服务器文件到本地
复制文件:
scp remote_username@remote_ip:remote_folder local_folder
复制目录:
scp -r remote_username@remote_ip:remote_folder local_folder
3. 命令格式
scp [可选参数] file_source file_target
参数列表:
参数 | 参数说明 |
-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 | port是指定数据传输用到的端口号 |
-S program | 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项 |
4. 实例
A服务器:120.45.36.78, B服务器:134.124.23.47,用户名www,A服务器作为本地服务器
4.1 复制本地文件到远端服务器:scp ttt.txt www@134.124.23.47:/home/www/
4.2 复制本地目录到远端服务器:scp -r /home/www/test/ www@134.124.23.47:/home/www/,那么B服务器/home/www下就会有test目录了,如果你想修改目录名称:scp -r /home/www/test/ www@134.124.23.47:/home/www/remote_test/;那么test目录就会命名为remote_test
4.3 复制远端服务器上的文件到本地:scp www@118.31.185.140:/home/www/ttt.txt ./
4.4 复制远端服务器上的目录到本地:scp -r www@118.31.185.140:/home/www/test/ ./;如果你想修改目录名称:scp -r www@118.31.185.140:/home/www/test/ ./remote_test即可;