如何使用shell脚本来调用bin文件

时间:2014-10-23 09:32:18

标签: linux shell

我想从shell脚本调用可执行文件。所以我在一个名为start.sh的文件中编写了一些代码。代码是:

#!/bin/sh

source env34/bin/activate

(我想使用文件"激活")。之后我执行

./start.sh

在命令行上,但它不起作用。

1 个答案:

答案 0 :(得分:0)

您需要删除sourcesource告诉解释器(您的shell)该文件应该直接作为shell脚本加载。您没有运行shell脚本,而是运行可执行文件(" bin"),因此您只需直接调用它,而不是source

额外提示:如果您的脚本执行的最后一件事是调用此其他二进制文件,则可以使用exec实际用二进制文件替换正在运行的脚本,因此脚本根本不再运行。有些人喜欢这样,因为它避免了再启动一个进程,并保持topps更精简的输出:

#!/bin/sh

exec env34/bin/activate

请注意,exec行之后脚本中的任何内容都不会运行,因此这仅适用于某些情况。但是"发射器"脚本就是一个很好的例子。