在perl中调用bash脚本

时间:2014-05-22 19:07:32

标签: perl bash

我试图通过这样做来调用perl中的bash脚本 -

my $which_mpi = "/sw/tools/tacc/builds/carter/site/salt_which_mpi";
$mpi_stack = system("$which_mpi",-n);

问题是我希望脚本在系统命令行

中调用时执行
$mpi_stack = system("$which_mpi",-n);

但问题是在$ which_mpi中分配路径时会自动执行脚本。所以不是我得到这个值

WHICH_MPI : /sw/tools/salt/builds/carter/altd/bin/site/salt_which_mpi

我正在使用bash脚本的输出获取路径,如

WHICH_MPI : /sw/tools/salt/builds/carter/altd/bin/site/salt_which_mpiopenmpi 1.6.1

其中openmpi 1.6.1是我的salt_which_mpi bash脚本的输出。

1 个答案:

答案 0 :(得分:1)

您可以使用perl的反引号运算符

`bash -c "$WHICH_MPI"`

看看这个问题: another stackoverflow question