Linux中的scp指令

在Linux和Unix系统中,scp(Secure Copy Protocol)是一个用于通过SSH协议进行安全文件传输的命令行实用程序。与传统的cp(copy)命令不同,scp允许用户在不同的机器之间、或同一台机器的不同位置之间传输文件或文件夹。

语法

基本语法如下:

bash 复制代码
scp [options] [source] [destination]
  • options:可选参数,用于修改scp的行为
  • source:源文件或目录
  • destination:目标文件或目录

常用选项

  • -r:递归复制,用于复制目录及其内容。
  • -p:保留文件属性(如修改时间、访问时间等)。
  • -q:安静模式,不显示复制进度。
  • -v:详细模式,显示详细的调试信息。

示例

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

    bash 复制代码
    scp local_file.txt username@remote_host:/path/to/destination/
  2. 从远程服务器复制文件到本地

    bash 复制代码
    scp username@remote_host:/path/to/source/file.txt /local/destination/
  3. 复制目录到远程服务器

    bash 复制代码
    scp -r local_directory/ username@remote_host:/path/to/destination/
  4. 从一个远程服务器复制文件到另一个远程服务器

    bash 复制代码
    scp username1@remote_host1:/path/to/source/file.txt username2@remote_host2:/path/to/destination/
  5. 使用特定SSH端口

    bash 复制代码
    scp -P 2222 local_file.txt username@remote_host:/path/to/destination/

安全性

由于scp使用SSH进行数据传输,因此它是加密的,这提供了额外的安全层。

注意事项

  • 如果你首次连接到远程主机,系统可能会提示你确认远程主机的身份。
  • 你必须具有对源文件和目标位置的适当访问权限。

这只是scp命令的一个简单介绍。更多高级用法和选项可以通过查看其man页面(通过运行man scp)来了解。

相关推荐
琥珀.3 小时前
mysql中json数组转列表查询
linux·运维·服务器
dawnsky.liu4 小时前
在 RHEL 中使用 goose 实现远程主机管理
linux·运维·ai
Linux运维技术栈6 小时前
CVE-2026-91403 高危漏洞修复:Rocky Linux 9 多版本 JDK 环境清理实操
java·linux·运维
slongzhang_7 小时前
linux 递归删除源码文件|递归删除目录下 *.js,但排除 *.min.js
linux·开发语言·javascript
叼烟扛炮7 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
无足鸟ICT8 小时前
【RHCA+】who命令(查看已登陆用户)
linux·运维·服务器
Escalating_xu8 小时前
【Linux 网络编程】应用层协议 HTTP(下):Header、连接管理与 C++ HTTP 服务器
linux·服务器·网络
GeW10 小时前
新质生产力路线图落地,Linux运维与数据库架构师的机会清单
linux
Brilliantwxx10 小时前
【Linux】 文件访问与路径解析:目录、文件名、dentry、路径缓冲与 dcache 全解析
linux·运维·服务器·开发语言·spring
father_122711 小时前
Greenplum 集群故障恢复与主备同步机制实战
linux·网络·greenplum