Сейчас при вызове без параметров получаем пустой html. Проверка $1 какая-то странная, мягко говоря: [ -f "$1" ]
А что нужно получать при вызове без параметров? Поменял на test -f "$1" || exit 1 в catdoc-0.93.4-alt2
Ну можно ругаться, но и так сойдет.