Linux中的scp 如何使用

scp(Secure Copy Protocol)是一个用于在不同计算机之间安全地传输文件的命令行工具。它基于 SSH(Secure Shell)协议,因此传输过程是加密的。以下是一些常见的 scp 用法示例:

基本语法

bash 复制代码
scp [options] source_file destination

常见的用法示例

  1. 从本地复制文件到远程服务器

    bash 复制代码
    scp /path/to/local/file username@remote_host:/path/to/remote/directory

    示例:

    bash 复制代码
    scp /home/user/file.txt user@192.168.1.2:/home/user/
  2. 从远程服务器复制文件到本地

    bash 复制代码
    scp username@remote_host:/path/to/remote/file /path/to/local/directory

    示例:

    bash 复制代码
    scp user@192.168.1.2:/home/user/file.txt /home/localuser/
  3. 从本地复制目录到远程服务器 (使用 -r 选项递归复制目录):

    bash 复制代码
    scp -r /path/to/local/directory username@remote_host:/path/to/remote/directory

    示例:

    bash 复制代码
    scp -r /home/user/directory user@192.168.1.2:/home/user/
  4. 从远程服务器复制目录到本地 (使用 -r 选项递归复制目录):

    bash 复制代码
    scp -r username@remote_host:/path/to/remote/directory /path/to/local/directory

    示例:

    bash 复制代码
    scp -r user@192.168.1.2:/home/user/directory /home/localuser/

常用选项

  • -P port:指定连接的端口号(默认是 22)。

    bash 复制代码
    scp -P 2222 /path/to/local/file username@remote_host:/path/to/remote/directory
  • -i identity_file:指定用于身份验证的私钥文件。

    bash 复制代码
    scp -i /path/to/private_key /path/to/local/file username@remote_host:/path/to/remote/directory
  • -C:启用压缩。

    bash 复制代码
    scp -C /path/to/local/file username@remote_host:/path/to/remote/directory

注意事项

  1. SSH 配置scp 使用 SSH 进行连接,因此你需要确保远程服务器上已经配置了 SSH 并且你有正确的访问权限。
  2. 权限问题:确保你在目标目录有写权限,否则会导致传输失败。
  3. 网络连接:确保本地计算机和远程服务器之间的网络连接正常。

总结

scp 是一个强大且易于使用的工具,用于在不同计算机之间安全地传输文件。通过掌握基本的语法和常见选项,你可以高效地进行文件传输操作。

相关推荐
Hello.Reader4 分钟前
从 0 到 1 理解硬盘数据恢复工具原理与工程实现
linux·运维·服务器·网络·数据库
小坏坏的大世界1 小时前
VMware 虚拟机无法上网问题排查
服务器·网络
『往事』&白驹过隙;2 小时前
C/C++中的格式化输出与输入snprintf&sscanf
linux·c语言·c++·笔记·学习·iot·系统调用
Je1lyfish2 小时前
CMU15-445 (2026 Spring) Project#1 - Buffer Pool Manager
linux·数据库·c++·后端·链表·课程设计·数据库架构
好好学习天天向上~~2 小时前
12_Linux学习总结_进程地址空间(虚拟地址)
linux·学习
麦聪聊数据2 小时前
基于 Web SQL 与 SQL2API 的数据治理架构实践
运维·sql·架构
BugShare2 小时前
飞牛NAS笔记本盒盖不休眠
linux
红球yyds2 小时前
haproxy介绍及部署
linux·运维·云原生
切糕师学AI3 小时前
NAT (Network Address Translation,网络地址转换)
运维·服务器·网络
x-cmd3 小时前
Browser-Use:用自然语言控制浏览器,告别脆弱的自动化脚本
运维·ai·自动化·agent·浏览器·x-cmd