您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Linux二进制安装程序(.bin,.sh)如何工作?

Linux二进制安装程序(.bin,.sh)如何工作?

基本上,这是一个shell脚本,位于某种压缩存档(例如tar存档)之前。您可以对自己使用tailor sed命令($0Bourne shell中的变量)来剥离前面的shell脚本,并将其余的脚本传递给您的非归档器。

例如,将以下脚本创建为self-extracting

#!/bin/sh -e
sed -e '1,/^exit$/d' "$0" | tar xzf - && ./project/Setup
exit

sed上面的命令从文件的第一行到以“ exit”开头的第一行删除所有行,然后将其余的行继续通过。如果紧接在“ exit”行之后开始的是tar文件,则tar命令将提取文件。如果成功,则将执行./project/Setup文件(可能是从tarball中提取的)。

然后:

mkdir project
echo "#!/bin/sh" > project/Setup
echo "echo This is the setup script!" >> project/Setup
chmod +x project/Setup
tar czf - project >> self-extracting

现在,如果您摆脱了原来的project目录,则可以运行self-extracting,它将解压缩该tar文件并运行安装脚本。

其他 2022/1/1 18:14:38 有590人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶