wc -l file...
печатает количество строк и имя файла для каждого имени файла, указанного в качестве аргумента
Если имена файлов не указаны, wc -l
считывает из стандартного ввода и просто печатает количество строк.
Короче говоря, используйте
len=$(wc -l < file.txt)
Обратите внимание на перенаправление, так что вместо имени файла в командной строке используется stdin.
И попробуйте полностью забыть о существовании обратных галочек:их использование устарело в течение эонов.Используйте синтаксис $(...)
, как показано.