Как перенаправить вывод одной команды в _аргумент_ другой команды?
Всем привет.
Я слегка запутался :)
Обычно в ОС (DOS, win) используются (наверное) два варианта входных данных для программ.
1. программа ожидает ввод (например, more)
2. программа читает аргументы командной строки (type)
Есть конвейер, который удобно применять с типом 1.
Например type <текстовый файл> | more отлично перекинет весь текст из одной программы в другую.
Можно даже перенаправление использовать: more <текстовый файл
Собственно вопрос: а что делать, если я хочу использовать конвейер/перенаправление, но программа (например type), поддерживает только аргументы командной строки и обычный ввод никак не принимает?
Например, я хочу найти в папке все файлы .bat и вывести их на экран.
Пишу:
dir /b | find ".bat" | type
И, конечно, ничего не работает.
Потому что type ожидает, что ей дадут аргумент. А не "ввод".
Вопрос: как запихать "ввод" в какой-нибудь аргумент, и сделать это внутри cmd|bat файла? Возможно ли это?
(Ну, type то можно обмануть, если зафиксировать имя файла. А что делать, если нужно прокидывать произвольную строку?)