[newbies] Неиспользуемые переменные в Bash и оптимизация

Alexander Lubyagin lubyagin на yandex.ru
Пн Дек 1 17:14:05 MSK 2025


Разбирался тут с подсказками shellcheck, и обнаружил следующее.

Вот такой скрипт не выполняет функцию func:

#!/bin/bash
func()
{
  echo "---" "$1"
}
i="abc:123"
echo $i
v="$(func ${i%%:*})"
# echo "$v"
# END

Если `echo` раскомментировать, то он выполняет функцию func, и 
допечатывает "--- abc".

Вопрос. Bash "выкидывает" неиспользуемые ветви кода? Есть ли у него 
встроенная оптимизация?

--



Подробная информация о списке рассылки devel-newbies