我试图在bash -c "..."命令中获取bash脚本,但它不起作用。
如果我在bash -c "..."之外运行该命令,它就能工作。
我需要使用bash -c "...",因为我希望确保人们使用Bash (不使用sh、tcsh等)。
工作:
bash> source /neuro/arch/scripts/neuro-fs stable;echo $XAPPLRESDIR;
/neuro/arch/x86_64-Linux/packages/matlab/MATLAB_Compiler_Runtime/current/X11/app-default不工作:
bash> bash -c "source /neuro/arch/scripts/neuro-fs stable;echo $XAPPLRESDIR;"在Bash脚本中,我们将XAPPLRESDIR定义为:
export XAPPLRESDIR=/neuro/arch/x86_64-Linux/packages/matlab/MATLAB_Compiler_Runtime/current/X11/app-defaults脚本开头的#!/bin/bash似乎没有什么区别。
在这种情况下,出口是一种“坏”做法吗?
发布于 2014-05-08 13:44:54
"bash -c“中的变量展开发生在运行"bash -c”之前;您需要执行以下操作:
bash -c "source /neuro/arch/scripts/neuro-fs stable;echo \$XAPPLRESDIR;"https://stackoverflow.com/questions/23543313
复制相似问题