質問
このコマンドには空の出力があります。
su user -c "ABC=abc;echo $ABC"
何かアイデア、入力コマンドの変数をどのように定義できますか?
解決
引用符を単一の引用符に変更します。二重引用符では、変数をまだ設定していない現在の環境に置き換えることができます。違いを確認するには、バージョンを試してください $USER
そして、それをこれと比較してください:
su user -c 'ABC=abc; echo $ABC; echo $USER'
他のヒント
ボーンシェルバリアントを使用する場合:
ABC=abc su user -c 'echo $ABC'
そうでない場合は、envを使用してください。
env ABC=abc su user -c 'echo $ABC'
所属していません StackOverflow