基于剪贴板的文件传输方案

文章目录

  • 背景
  • 原理
  • 步骤
    • 获取待上传文件的十六进制数据
    • 格式转换
    • 输出

背景

某次误删了环境上的C库之后想到的
什么都不可用了,但当前的ssh连接还在,echo命令和重定向符还可以使用
这就催生了我的想法:直接用echo -en “\xab\xcd” > file这样直接把C库给恢复回来

原理

当前的ssh连接已经被加载到了内存中运行,所以当前连接还在

echo命令不是一般的可执行文件,是bash的内建命令,当前bash也被加载到了内存中,所以当前bash还可用

echo -en “\xab\xcd” > file 输出二进制形式的数据再重定向到文件

步骤

获取待上传文件的十六进制数据

首先把待上传文件以十六进制打印出来,比如我要恢复C库,就去其他一样的环境上找一个C库

od -xvAn file > origin.bin,-x 以 16进制打印, -v verbose 不省略全0行, -An 不打印偏移量

这样就输出了全部的二进制数据到origin.bin文件

格式转换

上一步输出的十六进制数据还需要转换,需要每个字节前插入一个\x转义符,按内存序重排、移除空格和换行符

在这里插入图片描述

这个字符插入+顺序重排写个代码随便就搞定了,我的源代码不在这台电脑上,有空了补一下

输出

用本地环境的文本编辑器打开重排后的文件,全选 复制
然后在目标环境上打印出echo -en “” > target_file,粘贴到引号中间

静静等待复制完成

因为一个字节会被扩展为两个16进制数且插入了\x符号,所以原本2~3MB大小的文件会被扩大到约10MB大小,但是不用担心,剪贴板是很可靠的,即使10兆个字符它也一样不会有一个误码

10MB字节我复制约需5分钟,时间长短可能和本地电脑、目标主机性能、网速有关

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/684739.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

20240215-查找周长最大的多边形

题目要求 给你一个由长度为 n 的正整数 nums 组成的数组。 多边形是至少有 3 条边的封闭平面图形。多边形的最长边小于其他边之和。 相反&#xff0c;如果有 k 个&#xff08;k > 3&#xff09;正实数 a1、a2、a3、...、ak&#xff0c;其中 a1 < a2 < a3 < ... …

【c++】析构函数

1.特征 析构函数是特殊的成员函数&#xff0c;其特征如下&#xff1a; 1.析构函数名是在类名前加上字符~。 2.无参数无返回值类型。 3.一个类只能有一个析构函数。若未显式定义&#xff0c;系统会自动生成默认的析构函数。注意&#xff1a;析构函数不能重载。 4.对象生命周…

StringBuffer线程安全而StringBuilder线程不安全

下面我们从append方法的源码进行分析 StringBuilder Overridepublic StringBuilder append(String str) {super.append(str);return this;} StringBuffer Overridepublic synchronized StringBuffer append(String str) {toStringCache null;super.append(str);return this…

H12-821_48

48.下面是台路由器输出的BGP信息,关于这段信息描述措误的是 A.路由器的Router ID是1.1.1.9 B.display bgp network命令来显示BGP通过network ( BGP)的通告的路由信息 C.该路由器所在AS号是10 D.该路由器通过import-route命今引入了4.4.4.0/24的网段 答案&#xff1a;D 注释&am…

假期作业 10

1.整理磁盘操作的完整流程&#xff0c;如何接入虚拟机&#xff0c;是否成功识别&#xff0c;对磁盘分区工具的使用&#xff0c;格式化&#xff0c;挂载以及取消挂载 U盘接入虚拟机 在虚拟机--->可移动设备--->找到U盘---->连接 检测U盘是否被虚拟机识别 ls /dev/s…

Diffusion Transformer U-Net for MedicalImage Segmentation

用于医学图像分割的扩散变压器U-Net 摘要&#xff1a; 扩散模型在各种发电任务中显示出其强大的功能。在将扩散模型应用于医学图像分割时&#xff0c;存在一些需要克服的障碍:扩散过程调节所需的语义特征与噪声嵌入没有很好地对齐;这些扩散模型中使用的U-Net骨干网对上下文信…

Codeforces Round 926 (Div. 2)(A~C)

A. Sasha and the Beautiful Array 分析&#xff1a;说实话&#xff0c;打比赛的时候看到这题没多想&#xff0c;过了一下样例发现将数组排序一下就行&#xff0c;交了就过了。刚刚写题解反应过来&#xff0c;a2-a1a3-a2.....an-a(n-1) an - a1&#xff0c;所以最后结果只取决…

103.二叉树的锯齿形层序遍历

​​题目来源&#xff1a; leetcode题目&#xff0c;网址&#xff1a;103. 二叉树的锯齿形层序遍历 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1a; 每一层从左到右遍历&#xff0c;逐一判断是否需要反转。 解题代码&#xff1a; /*** Definition for a bina…

Python字典全面指南:基础操作与高级应用实例解析

在Python编程中&#xff0c;字典作为核心的数据结构之一&#xff0c;凭借其高效查询、动态添加与删除属性&#xff0c;成为了处理键值对数据的理想选择。本文将逐步详解Python字典的基本操作&#xff0c;并通过实际案例展示如何查找共同键、设置默认值、更新字典、合并字典&…

python工具方法 45 基于ffmpeg以面向对象多线程的方式实现实时推流

1、视频推流 参考基于ffmpeg模拟监控摄像头输出rtsp视频流并opencv播放 实现视频流的推流。 其基本操作就是,安装视频流推流服务器,ffmpeg,准备好要推流的视频。 命令如下所示:ffmpeg -re -stream_loop -1 -i 风景视频素材分享.flv -c copy -f rtsp rtsp://127.0.0.1:554/…

Java数组,你想要的重点都在这。

1.数组的概述 数组 , 就可以理解为多个多个数据的组合 是程序中的容器 : 数组 , 集合框架(以后会将 : List , Set , Map) 数组存储中的数据的特点 : 依次紧密排列 , 有序的 , 可以重复的 此时的数组 , 集合框架都是在内存中对多个数据的存储 . 数组的其他特点 : 一旦初始化…

STM32 与 ARM 谁比较强大?

STM32 和 ARM 是两个不同的概念&#xff0c;STM32 是一种微控制器产品&#xff0c;而 ARM 是一家处理器架构设计和许可的公司。因此&#xff0c;无法简单地比较它们的强大程度。 STM32 是基于 ARM Cortex-M 核的微控制器产品&#xff0c;具有高性能、低功耗、低成本和易于开发等…

突破编程_C++_高级教程(多线程编程的基础知识)

1 多线程编程基础 线程是操作系统能够进行运算调度的最小单位&#xff0c;它被包含在进程之中&#xff0c;每个进程至少有一个线程&#xff0c;即主线程。线程依赖于进程&#xff0c;不能单独存在。线程的主要作用是实现并发执行&#xff0c;即多个线程可以同时执行不同的任务…

怎么搭建自己的网站?

怎么搭建自己的网站 一.领取一个免费域名和SSL证书&#xff0c;和CDN 特点&#xff1a;支持Cloudflare CDN Cloudflare是全球知名的CDN提供商&#xff0c;如果你不想暴露你的源站&#xff0c;又想使用我们的二级域名&#xff0c;不需要前往Cloudflare添加域名&#xff0c;修…

【机器学习笔记】 6 机器学习库Scikit-learn

Scikit-learn概述 Scikit-learn是基于NumPy、 SciPy和 Matplotlib的开源Python机器学习包,它封装了一系列数据预处理、机器学习算法、模型选择等工具,是数据分析师首选的机器学习工具包。 自2007年发布以来&#xff0c;scikit-learn已经成为Python重要的机器学习库了&#xff…

家里台式机需要把一个网站发布到外网可用,怎么搞?--DDNS配置(动态域名解析配置)

前言 Dynamic DNS是一个DNS服务。当您的设备IP地址被互联网服务提供商动态变更时,它提供选项来自动变更一个或多个DNS记录的IP地址。 此服务在技术术语上也被称作DDNS或是Dyn DNS 如果您没有一个静态IP,那么每次您重新连接到互联网是IP都会改变。为了避免每次IP变化时手动更…

java数据结构与算法刷题-----LeetCode18. 四数之和

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 解题思路 此题为三数之和的衍生题&#xff0c;代码完全一样&#xff0c;只…

全局异常处理器简单使用

一、为什么需要全局异常处理器&#xff1f; 统一异常处理&#xff1a;在应用程序中&#xff0c;可能会出现各种各样的异常情况&#xff0c;如数据库连接失败、资源不存在、权限问题等等。全局异常处理器允许我们统一处理这些异常&#xff0c;而不是在每个地方都去处理它们&…

一、Java安装JDK8

Java安装JDK8 一、Centos7.91.命令行安装2.安装包安装2.1 下载2.2 安装2.3 配置java环境 二、Windows1.下载2.安装3.配置环境变量 一、Centos7.9 1.命令行安装 yum install java-1.8.0-openjdk.x86_642.安装包安装 2.1 下载 下载地址&#xff1a;https://www.oracle.com/cn…

基于T1w/T2w 比值揭示髓磷脂相关变化

前言&#xff1a; 最近在阅读文献的时候发现2篇文章&#xff0c;是采用T1w/T2w 比值表征髓磷脂&#xff0c;有点感兴趣&#xff0c;因此尝试了一下文献所提出的方法。&#xff08;https://www.ncbi.nlm.nih.gov/pmc/articles/PMC9247578/ https://www.ncbi.nlm.nih.gov/pmc/ar…