Chinaunix首页 | 论坛 | 博客
  • 博客访问: 349062
  • 博文数量: 60
  • 博客积分: 1570
  • 博客等级: 上尉
  • 技术积分: 620
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-02 23:37
文章分类

全部博文(60)

文章存档

2012年(2)

2010年(2)

2009年(56)

分类: LINUX

2012-10-10 00:24:51

在shell 脚本中,可以嵌入二进制可执行程序。
思路:将二进制可执行程序添加到shell 末尾,运行shell 时,在将该二进制可执行程序导出来,然后执行导出的二进制程序。

1. 先准备shell 脚本
[root@liumin 123]# cat test.sh
#!/bin/sh

prog_name="./test.exe"

rm -f ${prog_name}
sed "1,/^### END OF THE SCRIPT###/d" "$0" > ${prog_name}   --->导出二进制程序
chmod u+x ${prog_name}
${prog_name}
rm -f ${prog_name}

### WARNING: Do not modify the following!!!
exit 0
### END OF THE SCRIPT### ----------> 这是shell 脚本当前的最后一行

2. 将二进制可执行程序 /bin/date 嵌入到该shell 脚本中
[root@liumin 123]# cat /bin/date  >> test.sh  

3. 执行shell脚本 test.sh, 验证是否输出与 date 命令一致:
[root@liumin 123]# ./test.sh
2012年 10月 24日 星期三 16:41:20 CST

4.如果有多个二进制程序,可以将他们压缩到一个压缩包中,然后将该压缩包添加到shell 结尾(例如使用cat 命令),然后使用同样的方法导出就可以了。


阅读(10664) | 评论(2) | 转发(2) |
给主人留下些什么吧!~~

xgyz18202012-10-13 00:49:29

目前只会这个。。。 就记下来学些了~呵呵,对于我来说是新的。。。

personball2012-10-10 15:40:44

这个方法蛮老了。。