• scp 命令


    从远程服务器中复制到本地(当前目录)

    scp -P 22 root@10.0.205.77:/root/tb_website_self.sql .

    scp -P 220520 root@172.11.98.56:/home/dev_process/logs .

     常见命令

     基本用法

     scp [可选参数] 源文件/目录 目标文件/目录 

    常用的可选参数

        -P 大写的,指定端口号
        -r 递归复制整个目录
        -v 显示所有 debug 信息
        -q 不显示传输进度
        -C 大写的,启用压缩
        -4 使用 IPv4 地址
        -6 使用 IPv6 地址

    本地复制到远程

    scp -r local_folder remote_username@remote_ip:remote_folder 
    或者 
    scp -r local_folder remote_ip:remote_folder 
    • 第1个指定了用户名,命令执行后需要再输入密码;
    • 第2个没有指定用户名,命令执行后需要输入用户名和密码;

    复制文件

    scp  /root/test.txt  root@192.168.1.10:/root/

    将 /root/test.txt 拷贝到 192.168.1.10 的 /root/ 目录下,文件名还是 text.txt,使用 root 用户,此时会提示输入远程 root 用户的密码。

    复制文件并重命名

    scp  /root/test.txt  root@192.168.1.10:/root/test1.txt

    将 /root/test.txt 拷贝到 192.168.1.10 的 /root/ 目录下,文件名还是 text1.txt,使用 root 用户,此时会提示输入远程 root 用户的密码。

    复制整个目录

    scp  -r  /root/test/  root@192.168.1.10:/root/

    将整个目录 /root/test/ 复制到 192.168.1.10 的 /root/ 下,即递归的复制,使用 root 用户,此时会提示输入远程 root 用户的密码。

    远程复制到本地

    远程复制到本地 与 从本地复制到远程命令类似,不同的是 远程文件作为源文件在前,本地文件作为目标文件在后。

    scp root@192.168.1.10:/root/test.txt /root/test.txt

    避免每次都输入远程密码

    scp 默认使用 ssh, 每次传输都需要输入远程用户的密码,十分麻烦。但是如果两台机器之间建立了信任关系后,则不需要输入密码,如下首先在本机上生成配对密钥

     ssh-keygen -t rsa

    然后将本机上的公钥文件拷贝到远程机器,并命名为 authorized_keys

    scp /root.ssh/id_rsa.pub root@192.168.1.10:/root/.ssh/authorized_keys

    以后再传文件就不用输入密码了,包括使用 ssh, sftp 时,都不用输入密码了。

    故乡明
  • 相关阅读:
    app.config应该放哪?
    Connection 和Dispose的学习日志
    简单的sqlhelper的学习日志
    EF 事务(非分布式事务)
    Angularjs 地址联动2.1.1
    C# 如何物理删除有主外键约束的记录?存储过程实现
    C# 枚举基本用法及扩展方法
    JS 去除重复元素的方法
    MVC4程序运行报错
    ASP.NET MVC4 & Entity Framework 6.0 IIS 部署出错解决方案
  • 原文地址:https://www.cnblogs.com/luweiweicode/p/14746254.html
Copyright © 2020-2023  润新知