Задать вопрос
@shledon

Почему служебные символы работают не везде?

Я возможно сейчас пытаюсь сделать полный бред (скорее всего) но все же я пока разбираюсь с Linux (Поймите и простите).
Я пытаюсь использовать служебные-символы или же специальные символы или же символы-команд! их везде называют по разному а еще есть регулярные выражения(это как я понял относиться только к grep)... Ну и вот нечего не получается, я хочу перенаправить текст asdasdasd в файле 1.txt в другие файлы с расширением .txt но получается это только если использовать полное имя например cat 1.txt > 3.txt тогда все переносится, что я делаю не так и как правильно?
spoiler
ARL071f.png
  • Вопрос задан
  • 379 просмотров
Подписаться 1 Простой 11 комментариев
Решения вопроса 2
karabanov
@karabanov Куратор тега Linux
Системный администратор
bash так не умеет, после раскрытия аргументов возникает неоднозначность ввиду большого количества аргументов (собственно в сообщении об ошибке так и написано "ambiguous redirect").
Можешь воспользоваться утилитой tee, она так умеет, например:

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

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

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

Говоря про "служебные символ", следует почитать документацию и различать их.
Есть wildcards, есть variable expansion, есть regular expression, есть специальные переменные, есть команды самого баш, есть bash expansion. Зная какие к чему относится, можно понимать где и как их применять.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Drno
ну а как Вы хотели по другому? Вы пытаетесь записать в файл инфу, системе надо знать в какой файл Вы хотите записать...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы