• scp命令


    scp命令

    scp命令用于Linux之间复制文件和目录,scpsecure copy的缩写,是Linux系统下基于ssh登陆进行安全的远程文件拷贝命令,使用scp可以实现从本地系统到远程系统、从远程系统到本地系统、在本地系统的两个远程系统之间的复制传输。scp是加密的,rcp是不加密的,可以认为scprcp的加强版。

    语法

    scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2
    

    参数

    • -1: 强制scp使用协议1,这是一个较旧的协议。
    • -2: 强制scp使用协议2,这是一个较旧的协议。
    • -3: 两个远程主机之间的副本通过本地主机传输,如果没有此选项,数据将直接在两个远程主机之间复制,此选项还禁用进度表。
    • -4: 强制scp仅使用IPv4地址。
    • -6: 强制scp仅使用IPv6地址。
    • -B: 使用批处理模式,无需任何交互式键盘输入即可运行,这意味着scp无法通过要求用户输入密码来验证会话,此时需要使用密钥进行身份验证。
    • -C: 启用压缩,该压缩将-C标志传递给ssh以启用加密连接的压缩。
    • -c cipher: 选择用于加密数据传输的密码,此选项直接传递给ssh
    • -F ssh_config: 为ssh指定每个用户的备用配置文件,此选项直接传递给ssh
    • -i identity_file: 选择读取RSA身份验证的身份(私钥)的文件,这个选项直接传递给ssh
    • -l limit: 限制使用的带宽,以Kbit/s为单位。
    • -o ssh_option : 可用于以ssh_config中使用的格式将选项传递给ssh,例如AddressFamilyBatchModeBindAddress等等,这对于指定没有单独的scp命令标志的选项非常有用。
    • -P port:指定远程主机上要连接到的端口,注意这个选项是用大写字母P写的,因为-p已经被保留了,用于保存rcp中文件的时间和模式。
    • -p: 保留原始文件的修改时间、访问时间和模式。
    • -q: 禁用进度表。
    • -r: 递归地复制整个目录。
    • -S program: 用于加密连接的程序名称,程序必须能够解析ssh选项。
    • -v: 详细模式,使scpssh打印有关其进度的调试消息,这有助于调试连接,身份验证和配置问题。

    示例

    file.txt传输到远程主机。

    scp file.txt root@1.1.1.1:/tmp
    # file.txt                      100%    0     0.0KB/s   00:00
    

    使用私钥将file.txt传输到远程主机。

    scp -i ./v file.txt root@1.1.1.1:/tmp
    # file.txt                      100%    0     0.0KB/s   00:00
    

    将远程目录中file.txt文件传输到本地,使用私钥验证身份。

    scp -i ./v root@1.1.1.1:/tmp/file.txt ./
    # file.txt                      100%    0     0.0KB/s   00:00
    

    每日一题

    https://github.com/WindrunnerMax/EveryDay
    

    参考

    https://www.computerhope.com/unix/scp.htm
    https://www.runoob.com/linux/linux-comm-scp.html
    https://linuxize.com/post/how-to-use-scp-command-to-securely-transfer-files/
    
  • 相关阅读:
    Java集合类: Set、List、Map、Queue使用场景梳理
    Java通过JDBC进行简单的增删改查(以MySQL为例)
    Servlet学习笔记
    Tomcat原理详解
    Tomcat的JVM和连接数设置
    Google Chrome 未响应。是否立即重新启动?---解决方法(秒速解决)
    LDAP服务器的概念和原理简单介绍
    Java IO流学习
    JavaScript_js模拟键盘输入
    Java_类似java.lang.VerifyError: Expecting a stackmap frame at branch target 22 in method的解决方法
  • 原文地址:https://www.cnblogs.com/WindrunnerMax/p/13763609.html
Copyright © 2020-2023  润新知