makeself
makeself
makeself, 在Unix上制作可自提取的存档。
网站: https://makeself.io/
github地址: https://github.com/megastep/makeself
下载安装:
在github的release页面下载.run文件执行即可
用法:
makeself.sh [args] archive_dir file_name label startup_script [script_args]
官方示例:
makeself.sh /home/joe/mysoft mysoft.sh "Joe's Nice Software Package" ./setup
makeself.sh --notemp makeself makeself.run "Makeself by Stephane Peter" echo "Makeself has extracted itself"
简单示例
目录结构:
test_folder/
└── test.sh
test.sh内容:
#!/bin/bash
while true
do
echo "Hello World!"
sleep 3
done
打包命令:
./makeself.sh /home/hello/Desktop/test_folder pack_test.sh "Just a description" ./test.sh
生成pack_test.sh之后执行就可以运行test.sh了
提取文件
使用makeself生成的文件接受一些参数,所以可以通过这个命令来提取文件:
./pack_test.sh --noexec --keep
# 参数含义:
# --noexec 提取后不执行脚本,包含了`--noexec-cleanup`
# --keep 保留提取的文件
如果提取有问题的话,可以尝试手动提取:
找到明文差不多最后的 b'exit $res\x0A` 之后就是被打包的文件了,可能是压缩包什么的,可以根据开头的hash验证
2023/2/13
有些东西,分享就好
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异