я запускаю следующую функцию в (git -) bash в windows:
function config_get_container_values() {
local project_name=$1
local container_name=$2
#local container_name="gitea"
echo "###"
buildcmd="jq -r \".containers[]."
echo "$buildcmd"
buildcmd="${buildcmd}${container_name}"
echo "$buildcmd"
buildcmd="${buildcmd}foobar"
echo "$buildcmd"
echo "###"
}
Вывод этого следующий. Однако после использования переменной для расширения строки он начинает перезаписывать $ buildcmd. Я пробовал это также со всем в одной строке с помощью команды добавления (= +). Каждый раз один и тот же результат.
###
jq -r ".containers[].
jq -r ".containers[].gitea
foobar".containers[].gitea
###
Действительно странная вещь: когда я включаю строку local container_name="gitea"
, все работает, как ожидалось. Вывод:
###
jq -r ".containers[].
jq -r ".containers[].gitea
jq -r ".containers[].giteafoobar
###
Когда я помещаю все это в файл новостей, он также работает как ожидалось. Поэтому я думаю, что что-то идет не так в тысячах строк перед вызовом этой функции. Любая идея, что может быть причиной этого поведения?
С уважением
Дейв