【发布时间】:2013-08-15 16:13:12
【问题描述】:
我有一个可执行文件 a.out。我想要做的是将一个包装脚本附加到这个可执行文件中,它会做一些事情,然后调用 a.out。但是,我只想拥有一个可以分发的文件,而不是两个文件。有关如何执行此操作的任何建议?
我并不十分担心可移植性。任何使用 bash、perl 或 python 的解决方案都是首选,但任何脚本语言都可以。
【问题讨论】:
标签: bash embed executable
我有一个可执行文件 a.out。我想要做的是将一个包装脚本附加到这个可执行文件中,它会做一些事情,然后调用 a.out。但是,我只想拥有一个可以分发的文件,而不是两个文件。有关如何执行此操作的任何建议?
我并不十分担心可移植性。任何使用 bash、perl 或 python 的解决方案都是首选,但任何脚本语言都可以。
【问题讨论】:
标签: bash embed executable
您可以将 a.out 附加到包装脚本(在 bash 中为 exit 或在 Perl 中为 __END__ 之后),这会将其从自身提取到一个新文件中,更改其权限并运行它。
【讨论】:
#!/bin/bash
echo "Do few things before calling a.out"
/path/to/a.out
echo "Done calling a.out"
【讨论】:
a.out 位于您的文件系统中。您只需使用包装脚本调用它。实际上,您只是在调用一件事。 “分发”或“发送”一个文件是什么意思?发送或分发到哪里?