Почему служебные символы работают не везде?
bash так не умеет, после раскрытия аргументов возникает неоднозначность ввиду большого количества аргументов (собственно в сообщении об ошибке так и написано "ambiguous redirect").
Можешь воспользоваться утилитой tee, она так умеет, например:

cat 1.txt | tee {2,3,4,5}.txt 1>/dev/null

tee направляет вывод в файл и на стандартный вывод, можно не добавлять 1>/dev/null, тогда содержимое файла будет так же выведено на экран, но врятли это требуется в данной ситуации.
Перенаправление ">" говорит о том, что ты хочешь перенаправить stdout в конкретный поток/файл.
Но конструкция [1-5].txt это не имя файла, это wildcard, который развернется в пять файлов. А ">" у тебя один.
То есть просто неправильный синтаксис, потому что для ">" можно указать только одно имя потока/файла.

Читай справку о командах и понимать, где можно указать несколько файлов, а где только один.

Говоря про "служебные символ", следует почитать документацию и различать их.
Есть wildcards, есть variable expansion, есть regular expression, есть специальные переменные, есть команды самого баш, есть bash expansion. Зная какие к чему относится, можно понимать где и как их применять.