Причина это set +x
печатается это set -x
означает, "печатают команду, которую Вы собираетесь выполнить, с расширениями, прежде, чем выполнить его. Таким образом, оболочка не знает, что Вы хотите, чтобы она не распечатала вещи, пока она не распечатала строку, говоря этому не распечатать вещи. Насколько я знаю нет никакого способа мешать этому произойти.
Проблемой является пространство в Вашем присвоении. Оболочка чувствительна к пробелу. Ваша команда является эквивалентом:
var="" "./gen.4.bt2 ./gen.rev.1.bt2 ./gen.rev.2.bt2 ./gen.1.bt2 ./gen.3.bt2 ./gen.2.bt2" # output of find
Необходимо удалить пространство:
var="$(find . -name 'gen*.bt2')"