Bash脚本包含二进制可执行文件

前端之家收集整理的这篇文章主要介绍了Bash脚本包含二进制可执行文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以编写一个bash脚本,里面包含一个二进制可执行程序?

我的意思是一个脚本,它包含一个文本形式的可执行文件的转储,当它被执行时将被这个脚本转储回可执行文件

我很想知道一个解决方案,它可以开箱即用而无需安装额外的软件包.可能吗?

谢谢!

我之前从未做过这样的事情;)
这将编译一些c源代码,创建一个包含二进制文件的b.bash脚本(以及用于简单开发的原始脚本)

(惑)

  1. #!/bin/bash
  2.  
  3. if [ "$0" == "b.bash" ];then
  4. tail -n +$[ `grep -n '^BINARY' $0|cut -d ':' -f 1` + 1 ] $0 | base64 -d > a2.out
  5. chmod +x a2.out
  6. ./a2.out
  7. echo $?
  8. exit
  9. fi
  10.  
  11. cat "$0" > b.bash
  12. echo "BINARY" >> b.bash
  13. cat > a.c << EOF
  14. int main(){
  15. return 12;
  16. }
  17. EOF
  18. gcc a.c
  19. base64 a.out >> b.bash

调用(a.bash生成b.bash):

  1. bash a.bash ;bash b.bash

我不知道如何逃避在执行前将二进制文件写入临时文件

猜你在找的Bash相关文章