Странный результат инициации переменной с выводом 'git description'
По какой-то причине это назначение: OUT=$(git describe HEAD)
печатает на стандартный вывод (например): fatal: No names found, cannot describe anything.
Это нормальное поведение? Почему этого не происходит с другими командами?
1 ответ
Решение
Вот собственно stderr
выход, а не stdout
, При запуске команды из интерактивного терминала оба stdout
а также stderr
настроены на переход в терминал.
Если бы вы хотели stderr
вывод в вашей переменной (что вы, вероятно, не, но в любом случае), перенаправьте его на stdout
как это:
OUT=$(git describe HEAD 2>&1)
Или если вы не хотите, чтобы человек, выполняющий ваш скрипт, видел это stderr
выходной, выбросьте это так:
OUT=$(git describe HEAD 2>/dev/null)