Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 将带有库的可执行二进制文件嵌入golang应用程序并运行它_Linux_Go - Fatal编程技术网

Linux 将带有库的可执行二进制文件嵌入golang应用程序并运行它

Linux 将带有库的可执行二进制文件嵌入golang应用程序并运行它,linux,go,Linux,Go,我有一个带库的二进制可执行文件,我需要将它们全部嵌入到golang应用程序中,并通过os/exec作为应用程序的新进程运行二进制文件。该应用程序在Linux上运行,并具有所有必要的权限 如何使用库和参数启动二进制文件本身,并创建一个新进程?最好的方法是不创建任何临时文件。可能与跳过一个简单的部分有关,假设二进制文件和库是在[]byte变量中定义的。关键问题是如何将二进制文件作为一个新进程从应用程序中打包,例如通过os/exec.Command()resp。如何将变量中的二进制文件传递给命令()。

我有一个带库的二进制可执行文件,我需要将它们全部嵌入到golang应用程序中,并通过
os/exec
作为应用程序的新进程运行二进制文件。该应用程序在Linux上运行,并具有所有必要的权限


如何使用库和参数启动二进制文件本身,并创建一个新进程?最好的方法是不创建任何临时文件。

可能与跳过一个简单的部分有关,假设二进制文件和库是在
[]byte
变量中定义的。关键问题是如何将二进制文件作为一个新进程从应用程序中打包,例如通过
os/exec.Command()
resp。如何将变量中的二进制文件传递给
命令()
。谢谢。exec.Command()调用exec(2)。您不能直接执行嵌入在二进制文件中的命令。它一定是一个文件。所以应该从二进制文件中提取命令。@mattn您是对的。注意:
os.StartProcess()
是一个低级接口。
os/exec
包只提供更高级别的接口。两者都启动程序,一个位于磁盘中的可执行二进制文件。每个问题都在stackoverflow上得到了回答,并且有很好的文档记录。你试过什么,什么不起作用?