Linux下创建自解压文件的方法

原理:

1、通过shell创建。原理是将脚本文件和压缩包文件放入同一个文件中。

2、通过shell脚本来完成定位,通过管道将压缩包内容传给tar解压到指定文件夹中

3、跳入解压文件夹完成程序运行。

使用方法:

1、把脚本内容放在 install.sh中,并准备压缩包文件install.tar.gz

2、cat install.sh install.tar.gz > auto

3、chmod +x  auto 执行脚本即可

#!/bin/bash

echo "auto unzip"
 
export TMPDIR=`mktemp -d /tmp/tmp.XXXXXX`

#从脚本$0(本脚本中)完成行数统计放在ARCHIVE中
ARCHIVE=`awk '/^__ARCHIVE_BELOW__/ {print NR + 1; exit 0; }' $0`
#定位到行尾,然后通过管道输出给tar
tail -n +$ARCHIVE $0 | tar xzv -C $TMPDIR
 #保存当前目录

CDIR=`pwd`

#跳入tmpdir删除文件,运行文件

cd $TMPDIR
./a.out  # 改为压缩包中你的可执行程序的名字

#跳回先前目录,删除掉临时目录
cd $CDIR
rm -rf $TMPDIR
 
exit 0
 #压缩包标志
__ARCHIVE_BELOW__

Shell自动解压文件 xK)ib!BdmJYr相关推荐

  1. tomcat不能自动解压war包

    tomcat启动后不自动解压war包,能访问tomcat界面,但是不能访问项目 这个是不能自动解压的日志信息 这个是能自动解压的日志信息 这个是不能自动解压的tomcat的运行界面 网上方法试过很多, ...

  2. linux shell脚本自动批量解压文件

    单个文件解压很简单,批量不确定目录的压缩包呢?解压到原路径?解压后删除原压缩包?本脚本可一键解决以上所有问题 linux shell脚本自动批量解压文件 脚本免费下载地址: 传送门https://do ...

  3. Linux:shell 脚本 自动解压压缩文件tar.gz到指定目录

    具体情境 Ubuntu16.04系统,将.tar.gz格式的文件从/home/myftp/upload/nuodongiot目录自动解压到/home/myftp/upload/backupcopy目录 ...

  4. python 图像压缩后前端解压_Python在后台自动解压各种压缩文件的实现方法

    1.需求描述 编写一个 Python 程序,每次下载压缩包形式的文件后,自动将内部文件解压到当前文件夹后将压缩包删除,通过本案例可以学到的知识点: os 模块综合应用 glob 模块综合应用 利用 g ...

  5. 转:ASP自动解压RAR文件

    其实想实现这种功能很简单,首先要上传一个RAR的解压程序,就是RAR自己的解压程序,只需要它的核心程序RAR.EXE这个文件就可以了.然后就要上传一个执行RAR.EXE的程序 CMD.EXE 这个是w ...

  6. Python自动解压各种压缩文件

    压缩文件是我们在使用电脑时经常会遇到的.压缩文件并不只有一种压缩模式.平常我们都是通过安装一些解压缩软件来打开这些不同的压缩文件.今天我们来谈一谈,如何用Python解压几种常见类型的压缩文件.    ...

  7. python解压打开文件过多_自动解压大量压缩文件 Python 脚本 | 学步园

    之前写了一个自动解压压缩文件到压缩文件所在文件夹的脚本 后根据自己需要,写了另外两个.原理一样 都是使用winrar的命令 第一个脚本没考虑周到,只能解压rar文件 改进后可以支持winrar支持的各 ...

  8. python解压打开文件过多_让Python在后台自动解压各种压缩文件!

    一.需求描述 编写一个Python程序,每次下载压缩包形式的文件后,自动将内部文件解压到当前文件夹后将压缩包删除,通过本案例可以学到的知识点: os 模块综合应用 glob 模块综合应用 利用 gzi ...

  9. 让Python在后台自动解压各种压缩文件!

    作者 | 刘早起 来源 | 早起Python(ID:zaoqi-python) 头图 |  CSDN 下载自东方IC   需求描述 编写一个 Python 程序,每次下载压缩包形式的文件后,自动将内部 ...

最新文章

  1. [解决]eclipse中android自动补全/提示卡机或假死
  2. java spring redis订阅_spring中订阅redis键值过期消息通知
  3. 47.2. 配置 Tomcat 服务器
  4. macOS的关于屏幕录制的快捷键和操作
  5. 对比Excel,学习Python报表自动化实战
  6. Linux socket编程(二) 服务器与客户端的通信
  7. [译] RxJava 中的错误处理
  8. 程序员面试金典——7.2碰撞的蚂蚁
  9. java基础 泛型类的定义
  10. Python雷电小游戏、战机小游戏源代码源程序
  11. 【MIKE21】批处理依次打开模型文件运行模型
  12. UG塑胶模具设计培训,、胶模具成型工艺培训
  13. 系统架构设计师与系统分析师历年实体分析与解答下载_【系统分析师】07-系统设计...
  14. ShaderForge-霓虹漩涡
  15. 笔记本合上盖子不休眠
  16. 感谢网友,让我实现了Zbrush笔刷自由
  17. Python爬虫之Scrapy框架系列(12)——实战ZH小说的爬取来深入学习CrawlSpider
  18. 校园网及入网计算机管理制度,校园网用户入网管理规定
  19. 博士生毕业后进高校当老师,直接是副教授吗
  20. 基于Java实现的新闻App

热门文章

  1. Nginx做流媒体服务Windows版实现直播
  2. PostCSS使用教程
  3. 计算机系统的性能评价
  4. 小程序经济大爆发,微信向左,百度向右
  5. oracle 配置sde,配置多个Oracle实例的sde服务
  6. n%i==0在c语言作用,在C语言中,if(n%i==0,)是什么意思?n和i分别为一个数、 , c语言中 if(n%i==0) break 什么意思...
  7. ClickHouse过年彩蛋
  8. GAN︱生成模型学习笔记(运行机制、NLP结合难点、应用案例、相关Paper)
  9. java自动下发工单源码_PESCMS Ticket开源客服工单系统 v1.3.5
  10. 动网论坛系统已死 所谓的改革无非是徒劳