Linux命令:scp

article/2025/11/9 4:09:53

目录

简介

一、语法

二、示例

2.1 将本地文件复制到远程主机目录

2.2 将本地目录复制到远程主机目录

2.3 将远程主机的文件复制到本机

2.4 复制远程主机目录到本机


简介

今天我们来介绍一个Linux命令:scp

scp — secure copy (remote file copy program),意思安全拷贝,安全复制的意思,是一个远程文件复制程序。准确来说就是不同服务器之间进行文件(包括目录)进行安全复制的命令。scp基于加州大学Regents的BSD源代码中的rcp程序。

如何安全的呢?

通过 SSH 协议安全地将文件复制到远程系统和从远程系统复制文件到本地的命令。使用 SSH 意味着它享有与 SSH 相同级别的数据加密,因此被认为是跨两个远程主机传输文件的安全方式。

一、语法

语法介绍:

scp [-346BCpqrTv] [-c cipher] [-F ssh_config] [-i identity_file] [-J destination] [-l limit] [-o ssh_option] [-P port] [-S program] source ... target

有这么多参数?是的,确实是。如果不信,可以使用以下命令查看:

man scp

这么多参数,我们大多用不到,我们介绍几个常用的即可。

-P port:Specifies the port to connect to on the remote host.  Note that this option is written with a capital ‘P’, because -p is already reserved for preserving the times and modes of the file.

-p      Preserves modification times, access times, and modes from the original file.

翻译过来就是:

-P: 指定要连接到远程主机上的端口。请注意,此选项使用大写“P”编写,因为-P已被保留用于保存文件的时间和模式。

-p:保留原始文件的修改时间、访问时间和模式。

 -r Recursively copy entire directories. Note that scp follows symbolic links encountered in the tree traversal.

 翻译过来就是:

-r:递归复制整个目录。注意,scp遵循在树遍历中遇到的符号链接。

 -C Compression enable. Passes the -C flag to ssh(1) to enable compression.

 翻译过来就是:

 -C:压缩启用。将-C标志传递给ssh(1)以启用压缩。

总结如下:

-P:指定端口。默认是22,不需要指定;如果不是22,则用大写P指定端口。

-p:保留原始文件的修改时间、访问时间和模式。

-r:递归复制整个目录。复制目录是必不可少。

-C:压缩文件。

二、示例

2.1 将本地文件复制到远程主机目录

scp redis.conf root@k8s-node02:/usr/local/redis-cluster/slave-6381/conf

将本机的当前目录的redis.conf文件,通过远程主机的用户root,复制到k8s-node02主机的22端口的/usr/local/redis-cluster/slave-6381/conf目录。

其中k8s-node02可以替换为远程主机的ip,22端口是默认的不用填写,root是远程主机的用户名。

执行该命令后会有提示:

 意思是:

无法确定主机“k8s-master01(192.168.222.100)”的真实性。

ECDSA密钥指纹为SHA256:nbOQMg0kDl5DW/jNRip8WsjbGKqzS/CIUuir7EWIB1Q。

是否确实要继续连接(是/否/[指纹])?

 我们此时输入yes,然后输入远程主机的密码即可,如果成功会显示复制成功的文件:redis.conf。

2.2 将本地目录复制到远程主机目录

我们创建一个目录,然后在该目录下创建一个文件,最后将该目录连同文件一起复制到远程主机。

scp -r test root@k8s-master01:/usr/local/redis-cluster/slave-6381/

现在去k8s-master01主机的/usr/local/redis-cluster/slave-6381/目录下查看一番。

2.3 将远程主机的文件复制到本机

 我们先删掉本地目录下的test-scp.txt文件,然后将k8s-master01主机的该文件复制过来。

scp root@k8s-master01:/usr/local/redis-cluster/slave-6381/test/test-scp.txt ./

上面的./可以修改为你想要的目录,这里的./指的是当前主机的当前目录。

我们下面要删除整个test目录,然后将远程主机的目录复制过来。

2.4 复制远程主机目录到本机

scp -r root@k8s-master01:/usr/local/redis-cluster/slave-6381/test ./

 


http://chatgpt.dhexx.cn/article/ysNLDtfO.shtml

相关文章

使用node.js构建一个web服务器(适合自学)

使用node.js构建一个web服务器 先介绍node.js的安装,再介绍使用node.js构建一个简单的web服务器,最后通过一个简单的示例,演示网页与服务器之间的数据交互的实现。 WEB服务器 WEB服务器也称为WWW服务器。WWW(World Wide Web、翻译成中文&a…

node-php-server 游戏服务器框架

做游戏服务器8年多了,用过lua, 用过C, 用过nodejs ,最近用的是php,有些人会说php不是用在web开发吗,怎么能用在游戏服务器的业务逻辑开发,php 怎么跟客户端通信,肯定有很多人不解。 其实很多时候,技术原理都是都是相通…

如何快速用node在本地搭建一个服务器

众所周知,服务器是通过安装特殊的软件(或者运行特殊的代码)来提供网络服务的机器。那么我们的电脑可不可以弄成一个服务器,来供他人访问呢? 答案是可以的,这里我们需要安装一下node.js这个软件。传送门&am…

通过node启动服务器必须的会的几个命令

1 首先通过cd 目录 切换到当前目录下 2 通过node app.js 启动服务器(或者nodemon apo.js) 3 通过ctrl c来关闭服务器!

用node.js搭建自己的服务器

前提要点: 1、首先让我们了解一下什么是服务器和客户端吧! 服务器是提供网络服务的机器,通过安装特殊的软件(或者是运行某段特殊的代码)来提供服务。 客户端与服务器:提供服务的是服务器,享受服…

将node项目部署到云服务器详细教程 原创

前言: 需要有node项目,并且能在本地服务器成功运行成功 一、购买云服务器 云服务器种类很多,价格都差不多,我这里购买的是ecs计算型云服务器,配置2核4G5M的配置基本就可以运行项目。 服务器购买我选择的是ecs计算型…

node服务器项目部署 - (电影网站)

查看更多资源 一、域名解析 1.登录 阿里云 -> 域名解析 - > 域名 指向 二、本地文件启动端口 movie-server/app.js 增加var env process.env.NODE_ENV || development //获取当前环境变量 如没有 就为 开发模式var dbUrl mongodb://imooc_movie_runner:F**k9001$1…

linux(centOS)下搭建node服务器之一、 安装Node.js

本例系统环境:腾讯云 CentOS 7.4 64位 一、找相应node版本,复制链接 1. 打开网址 http://nodejs.cn/download/; 2. ctrlshifti(打开开发者工具) 如图: 二、登录腾讯云服务器,进入系统界面 三、用命令行下载node到服务器、解压文件…

使用node服务器简单启动本地项目

目录 一、使用node启动本地web服务器 1、使用express 1)项目安装express 2)app.js关键代码如下 3)启动服务 4)打开浏览器访问相应地址即可看到项目 2、使用 http-server 1)全局安装http-server 2&#xff09…

启动第一个node服务器

创建一个文件夹,建一个server.js文件,安装完node环境 var http require(http);var server http.createServer(function (req, res) {res.writeHead(200, {Content-Type: text/plain});res.end(Hello World\n); })server.listen(1337,127.0.0.1); console.log(Ser…

React 项目搭建与部署,搭建Node服务器

环境配置与项目搭建 安装node,官网 直接下载安装webpack : npm install -g webpack 安装淘宝镜像(可选): npm install -g cnpm --registryhttps://registry.npm.taobao.org 安装create-react-app: cnpm install -g create-react-a…

node服务器支持https请求

node服务器支持https请求 水文一篇 问题 前段时间给自己的域名接入了https,但是前端向后端发起请求的时候报了这么一个错误 net::ERR_SSL_PROTOCOL_ERROR意思是https的请求不能向http服务器发起,所以,我们要把node服务加上ssl 操作 con…

node 进入网站服务器,node怎么启动服务器?

node启动服务器的方法:创建一个文件夹,新建一个server.js文件,文件代码中写入服务器的域名地址,然后在命令行执行命令node server.js就启动服务器了,打开浏览器访问服务器域名就可以看到server文件输出的内容了。 node…

如何立即关闭 Node 服务器?

我有一个包含 http服务器的 Node.js 应用程序,在特定情况下,我需要以编程方式关闭此服务器。 const http require(http);const server http.createServer((req, res) > {res.end(); }); server.on(clientError, (err, socket) > {socket.end(HTT…

在Node服务器中运行html文件

两个页面具有相同的协议(protocol),主机(host)和端口号(port)才是同源(即指在同一个域),当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同…

node 如何搭建服务器

1、安装node 查看node版本:node -v 2、创建node项目: 创建文件夹app cmd /app:npm init -y 初始化node项目 3、运行node文件 1、 cmd /app: node index.js 另一种运行方式 2、 packge.json: 配置: “serve”:“node index.js”, npm run serve 运…

Node服务器开发

目录 一、Node.js网站服务器 1、创建Node.js网站服务器 二、HTTP协议 1、HTTP的请求消息和响应消息 2、请求消息 ​ 3、响应信息 三、HTTP请求与响应处理 1、Get请求参数 2、 Post请求参数 一个完整的网站应用程序主要由客户端和服务器端两大部分组成。我们可以将服务器理…

常用网址记录

记录一些常用的网址 1,svn下载网站 http://tortoisesvn.net/ myeclipse svn插件地址:http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID2240 2,JDK下载网站 http://www.oracle.com/technetwork/java/javaee/downloads/index.html ht…

常用网址及博客

前站导航 网址集合 https://www.frontendjs.com/ jq插件库 各种有意思的代码(不是jq插件,迷惑为啥这名字) https://www.jq22.com/webinfo4 即时工具 免费的在线工具箱 https://www.67tool.com/ Swiper Demos https://swiperjs.com/…

常用网址导航推荐

作为一个程序员在工作开发中可能会遇到各种问题,需要各种问题解决,各种搜索资料一般都是穿梭在百度必应360等等各种导航之间, 所以需要一个好的网址导航作为浏览器主页,所以今天就给大家推荐几个不错的的导航网站 NO1.小不点导航…