Ваш код работает.
read text
count=$( echo "$text" | wc -w )
Это установит count
на 2, если я введу текст hello world
.
В комментариях вы говорите о подсчете символов.
count=$( echo "$text" | wc -c )
или
count=${#text}
сделают это за вас. Однако решение wc
также подсчитает последнюю новую строку, получив значение на один символ больше, чем при использовании метода расширения параметров. Метод wc
также будет сжимать пробелы в строке, если вы не заключите расширение $text
в двойные кавычки, как я сделал выше.
Кажется, это проблема Вэйланда(https://bugs.freedesktop.org/show_bug.cgi?id=97333). Возврат к X11 решает проблему (в Debian Buster, раскомментируйте #WaylandEnable=false в /etc/gdm3/daemon.conf, найдите аналогичный файл в Fedora)