每天学一个Linux命令1:scp@[toc]表示scp是securecopy的缩写,Linux下用来远程拷贝文件的命令,与其类似的命令有cp,但是cp只是本地复制,不能跨服,而且scp传输是加密的。可能会稍微影响速度。当你的服务器硬盘变成只读系统时,scp可以帮你把文件搬出来。另外scp是很耗资源的,不会增加太多系统负载。在这方面,rsync是远远落后的。rsync虽然比scp快,但是当小文件很多的时候,rsync会造成非常高的硬盘I/O,而scp基本不影响系统的正常使用。scp是linux系统下基于ssh登录的安全远程文件复制命令。linux的scp命令可以在linux服务器之间复制文件和目录。命令格式格式: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)将显示整个过程的调试信息。此信息用于调试连接、身份验证和配置问题。-ccipher用密码加密数据传输,这个选项会直接传给ssh。-Fssh_config指定一个备用的ssh配置文件,这个参数直接传递给ssh。-iidentity_file从指定文件中读取用于传输的密钥文件,该参数直接传递给ssh。-llimit限制用户可以使用的带宽,单位为Kbit/s。-ossh_option如果习惯使用ssh_config(5)中的参数传递方式,-Pport注意是大写的P,port是用于指定数据传输的端口号-Sprogram指定用于加密传输的程序.该程序必须了解ssh(1)选项。例:执行文件复制命令后,需要输入用户密码。第一个只指定远程目录,文件名不变。第二条指定文件名:1.scplocal_fileremote_username@remote_ip:remote_folder2.scplocal_fileremote_username@remote_ip:remote_file第三条和第四条命令没有指定用户名,需要在命令后输入用户名和密码执行,第三条只指定远程目录,文件名不变,第四条指定文件名3.scplocal_fileremote_ip:remote_folder4.scplocal_fileremote_ip:remote_filecopydirectoryscp-rlocal_folderremote_username@remote_ip:remote_folder:指定用户名,执行命令后需要输入用户密码scp-rlocal_folderremote_ip:remote_folder:未指定用户名,执行命令后需要输入用户名和密码从远程服务器复制到本地本地服务器。从远程复制到本地的scp命令和上面的命令是一样的,只要交换一下从本地复制到远程的命令后面的两个参数的顺序即可。示例1:从远程复制文件到本地目录scproot@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz/opt/soft/from/opt/soft/on192.168.120.204machine下载nginx-0.5.38.tar.gz目录下的文件到本地/opt/soft/目录下。例2:远程复制到本地scp-rroot@192.168.120.204:/opt/soft/mongodb/opt/soft/从192.168.120.204机器上/opt/soft/下载mongodb目录到本地/选择/软/目录。示例3:上传本地文件到远程机器指定目录scp/opt/soft/nginx-0.5.38.tar.gzroot@192.168.120.204:/opt/soft/scptest复制本地opt/soft中的文件/directorynginx-0.5.38.tar.gz到远程机器的opt/soft/scptest目录192.168.120.204示例4:上传本地目录到远程机器的指定目录scp-r/opt/soft/mongodbroot@192.168.120.204:/opt/soft/scptes将本地目录/opt/soft/mongodb上传到远程机器192.168.120.204的/opt/soft/scptest目录下示例5:从远程目录到本地指定目录directory+sshkeyA机登陆B机无密运行:sshroot@ipAddress2台机器A本地B远程:在A机:1.yuminstallssh2.ssh-keygen-trsa-C"472023527@qq.com"3.cat~/.ssh/id_rsa。pub//id_rsa是私钥。把这个公钥给B机在B机中:进入/root/.ssh/目录,把A机的公钥复制到B机文件:sam.pub然后执行命令:>>catsam.pub>>/root/.ssh/authorized_keys(将id_rsa.pub的内容追加到authorized_keys)接下来可以进行scp操作:scp-rroot@192.168.120.204:/opt/soft/mongodb/opt/soft/参考文章来自:https://www.cnblogs.com/peida...ssh密登录操作:https://blog.csdn.net/lizhiyu...附上个人博客https://zuoyoulai.github.io附上个人博客https://zuoyoulai.github.io
