在单独的bash进程中回显bash变量

时间:2018-12-12 08:04:50

标签: bash

我试图创建一个单独的bash进程并回显设置在其中的变量,但没有成功。没有回音。

bash -c "COMMIT_DIFF_FILE=diffs.diff && echo -e ${COMMIT_DIFF_FILE}"

这里可能是什么问题?提前非常感谢!

1 个答案:

答案 0 :(得分:1)

您必须正确引用它。

bash -c 'COMMIT_DIFF_FILE="diffs.diff" && echo "$COMMIT_DIFF_FILE"'

diffs.diff

您正在用双引号引起对bash -c的命令引用,该命令会在当前不存在变量的shell中扩展。

如果要使用双引号,请转义$

bash -c "COMMIT_DIFF_FILE=diffs.diff && echo \${COMMIT_DIFF_FILE}"