Вы можете скрыть шаблон глобуса:
for f in !(*.*); do html2text "$f" > "$f.txt"; done
Это, в отличие от использования find в for f in "$(find [...])"; do [...]; done (или путем запуска find в подоболочке с использованием обратных циклов), не сломается на имена файлов, содержащие новые строки (и FWIW, избегает разворачивания подоболочки и запуска другого процесса).
Для этого вам понадобится extglob опция bash, которая будет включена в вашем текущем bash экземпляр; однако extglob должен быть включен по умолчанию:
user@debian:~/tmp$ shopt extglob
extglob on
Если extglob выключен, вы можете включить его, выполнив:
shopt -s extglob
и снова выключить его путем запуска:
shopt -u extglob
Пример с использованием echo:
user@debian:~/tmp$ tree
.
├── file1
├── file1.html
├── file2
├── file2.html
├── file3
└── file3.html
0 directories, 6 files
user@debian:~/tmp$ for f in !(*.*); do echo "$f"; done
file1
file2
file3