*. Txt сначала раскрывается оболочкой, затем в этом списке аргументов вызывается rm
.
Именно поэтому иногда ваша команда не будет выполнена, если количество файлов очень велико и превышает максимально допустимое количество параметров.
Пример:
directory1/
a.txt
b.txt
cd directory1
rm *.txt
эквивалентно до:
cd directory1
rm a.txt b.txt