这样做的目的是我想要从 xmonad 读取用户的路径,如果适用的话,该路径会被他们的 .bashrc 中的任何内容修改。
我觉得奇怪的地方在于:如果我使用 xmonad 执行,bash -cl "env && echo $PATH"
它会返回一个,env
其中包含一个$PATH
与 echo 返回的值不匹配的值。(我想要前者。)
是什么赋予了?
除了解析输出之外,还有其他方法可以解决这个问题吗env
?
答案1
由于双引号的存在,shell 首先替换了 $PATH 的值。我不确定第一组双引号的作用是什么,但请尝试以下之一
'bash -cl "env && echo $PATH"'
"bash -cl 'env && echo $PATH'"
现在,您是否想从 env 输出中提取路径?如果是这样,echo
则不是该工具。您需要env | grep ^PATH=