Ваш LOGMSG
стандартный переменный захвата stdout (стандартный вывод), а не stderr.
Если не найдено .cpp
, ваш стандартный вывод будет пустым, и ваше условие всегда будет проходить.
Сначала необходимо проверить, есть ли какие-либо .cpp
файлы (например, [ "$?" = "0" ]
будет проверять результат команды find
), а затем, после захвата вывода find
, перейти к wc
и ваш тест.