このコンテキストでは、xmonad からユーザーのパスを読み取りたいのですが、該当する場合は、そのパスは .bashrc の内容によって変更されます。
ここで奇妙だと思うのは、xmonad を実行すると、echo によって返されたものと一致しないものを含むがbash -cl "env && echo $PATH"
返されることです(前者が欲しいのです)。env
$PATH
何が起こったのですか?
出力を解析する以外にこれを修正する方法はありますかenv
?
答え1
シェルは、二重引用符があるため、最初に$PATHの値を置き換えます。最初の二重引用符が何をしているのかはわかりませんが、次のいずれかを試してください。
'bash -cl "env && echo $PATH"'
"bash -cl 'env && echo $PATH'"
さて、env出力からパスだけを抽出しようとしているのでしょうか?もしそうなら、echo
ツールではありません。env | grep ^PATH=