是否可以编写一个bash脚本,其中包含一个二进制可执行程序?
我的意思是一个脚本,其中将包含文本形式的可执行文件的转储,并且在执行该脚本时将其转储回可执行文件?
我很想知道一个解决方案,该解决方案可以立即使用,而无需安装其他软件包。可能吗?
谢谢!
我以前从未做过类似的事情;)这将编译一些c源代码,创建一个b.bash
包含二进制文件的脚本(以及用于简单开发的原始脚本)
(惑)
#!/bin/bash
if [ "$0" == "b.bash" ];then
tail -n +$[ `grep -n '^BINARY' $0|cut -d ':' -f 1` + 1 ] $0 | base64 -d > a2.out
chmod +x a2.out
./a2.out
echo $?
exit
fi
cat "$0" > b.bash
echo "BINARY" >> b.bash
cat > a.c << EOF
int main(){
return 12;
}
EOF
gcc a.c
base64 a.out >> b.bash
调用(a.bash生成b.bash):
bash a.bash ;bash b.bash
我不知道如何在执行之前避免将二进制文件写到临时文件中...
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句