linux中两种远程文件传输方式:scp和rsync

linux中的远程文件传输有两种:
简单的解析scp和rsync,前是复制,后是同步。
rsync和scp在文件夹均不存在时,执行时间相差不大,但是文件夹存在的情况下差异很大。原因是scp是复制:若目的地文件不存在则新建,若存在则覆盖。而rsync是同步,比较两边文件是否相同,相同的话,就什么都不做,若存在差异就直接更新。

1 scp命令

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令, scp的原理是复制,若目的地文件不存在会新建,若存在则覆盖

1.1 scp命令的使用

在这里插入图片描述

  • 把本地文件或目录复制到远程主机(上传文件)
scp  本地文件   远程主机用户@远程主机ip :远程主机目录的绝对路径
scp -r 目录   远程主机用户@远程主机ip :远程主机目录的绝对路径

在这里插入图片描述

  • 把远程文件或目录下载到本机(下载)
scp  远程主机用户@远程主机ip :远程主机目录的绝对路径   本地文件
scp -r 远程主机用户@远程主机ip :远程主机目录的绝对路径   本地文件

在这里插入图片描述
scp命令常用的参数:

参数功能
-r复制文件夹
-q传输文件时不显示进度

2. rsync的用法

rsync的原理是增量传输,

rsync   文件      远程用户@远程主机ip:远程主机目录
rsync   远程用户@远程主机ip:远程主机目录     文件目录

rsync常用的的参数:

参数功能
-r复制目录
-l复制链接
-p复制权限
-o复制拥有者
-t复制时间戳
-g复制拥有组
-D复制设备文件
  • rsync和scp的对比

在主机之间里面建立免密登录使远程传输文件可以直接执行

ssh -keygen   ##生成密钥
ssh-copy-id  -i /root/.ssh/id_rsa.pub   root@192.168.43.189

在这里插入图片描述

1. 文件的归档

tar

c创建
f指定文件名称
x解档
v实现过程
t查看
r向归档文件中添加文档
–get解档指定文件
–delete删除指定文件
-C指定解档路径

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

文件的压缩和解压

常见的压缩文件的格式有zip,gz,bz2,xz,文件压缩和解压方法如下:

文件的格式压缩解压
zipzip -r dir.tar.zip dir.tarunzip dir.tar.zip
gzgzip dir.targunzip dir.tar.gz
bz2bzip2 dir.tarbunzip2 dir.tar.bz2
xzxz dir.tarunxz dir.tar.xz

将归档后的文件 dir.tar 压缩成zip,gz,bz2,xz格式,并进行解压:

在这里插入图片描述
在这里插入图片描述

文件的归档压缩和解压解档

文件格式归档压缩解压解档
gztar zcf name.tar.gz /dirtar zxf name.tar.gz
bz2tar jcf name.tar.bz2 /dirtar jxf name.tar.bz2
xztar jcf name.tar.xz /dirtar Jxf name.tar.xz

下图是将/etc下的文件归档压缩为gz,bz2,xz格式的压缩包,并不同格式的压缩包解压解档:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 可以使用curl命令将json文件传输linux服务器上,具体命令如下: curl -X POST -H "Content-Type: application/json" -d @filename.json http://server_ip:port/api/endpoint 其,filename.json是要传输的json文件名,server_ip是服务器的IP地址,port是服务器的端口号,api/endpoint是接收json数据的API接口。 ### 回答2: 在Linux系统传输JSON文件,可以借助各种网络传输协议和工具。下面简单介绍两种常用的方法。 1. 使用SCP命令:SCP (Secure Copy)是在UNIX和Linux系统用于安全地传输文件的命令。使用SCP命令可以从远程系统下载JSON文件,或将本地系统的JSON文件上传到远程系统。 下面是使用SCP命令将本地系统的JSON文件(例如file.json)上传至远程系统(例如服务器)的示例命令: ``` scp /path/to/file.json username@remote_ip:/remote/path/ ``` 其,/path/to/file.json是本地系统的文件路径,username是远程系统的用户名,remote_ip是远程系统的IP地址,/remote/path/是远程系统的目标路径。执行此命令后,文件将被传输到远程系统。 2. 使用rsync命令:rsync是一个功能强大的文件同步工具,在Linux系统广泛使用。rsync命令可以同步本地和远程系统之间的文件和目录。 下面是使用rsync命令将本地系统的JSON文件(例如file.json)上传至远程系统(例如服务器)的示例命令: ``` rsync -avz /path/to/file.json username@remote_ip:/remote/path/ ``` 其,/path/to/file.json是本地系统的文件路径,username是远程系统的用户名,remote_ip是远程系统的IP地址,/remote/path/是远程系统的目标路径。执行此命令后,文件将被传输到远程系统。 以上就是在Linux系统传输JSON文件的两种常用方法。根据具体需求和环境选择合适的方法来进行文件传输。 ### 回答3: 在Linux系统传输JSON文件,可以采用多种方式。以下是常见的几种方式: 1. SCP命令:SCP命令用于在本地和远程Linux服务器之间进行文件传输。可以使用以下命令将本地JSON文件传输远程服务器: ``` scp /本地路径/文件名.json 远程用户名@远程服务器IP:/远程路径/ ``` 2. FTP命令:FTP(文件传输协议)是一种标准的网络协议,用于在客户端和服务器之间进行文件传输。可以使用以下命令将JSON文件传输远程服务器: ``` ftp 远程服务器IP 输入用户名和密码 put 本地路径/文件名.json 远程路径/文件名.json ``` 3. rsync命令:rsync命令用于在本地和远程服务器之间进行文件同步和备份。可以使用以下命令将JSON文件传输远程服务器: ``` rsync -avz -e ssh /本地路径/文件名.json 远程用户名@远程服务器IP:/远程路径/ ``` 4. HTTP/HTTPS网络传输:可以使用HTTP或HTTPS协议通过网络传输JSON文件。可以使用curl命令发送HTTP POST请求将JSON文件发送到服务器: ``` curl -X POST -H "Content-Type: application/json" -d @本地路径/文件名.json 远程服务器URL ``` 以上是几种常见的在Linux系统传输JSON文件的方法。根据具体的需求和情况,选择合适的方法进行传输。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值