Если у вас есть программа, которая может преобразовать текст ввода в альтернативный выходной текст через канал, можете ли вы перенаправить вывод другой команды на имя файла, созданное первой программой?Можно ли перенаправить файл с именем, преобразованным программой?
echo Hello > source/somedir/somefile.txt | somepipeprogram
выше, вероятно, неправильный синтаксис, слово Hello заканчивается в. \ Источник \ somedir \ somefile.txt даже если somepipeprogram
всегда возвращает другое имя
Я тестировал somepipeprogram
и это делает действительно правильно преобразовать в мое желаемое имя выходного файла
т.е. echo \source\somedir\somefile.txt | somepipeprogram
вернет мое альтернативное имя файла.
Так что если somepipeprogram
был настроен, чтобы произвести «C: \ Temp \ someotherfilename.txt» от этого входа, то вывод будет, что с помощью предыдущего вызова
Я думал, что ответ от следующего вопроса: https://stackoverflow.com/a/25954264/176690 , за исключением переменная, которая была установлена не существует один раз setvar.bat выходов
Вот содержимое моего вторичного пакетного файла
SETLOCAL
CALL setvar filename echo %1 ^^^^| somepipeprogram
ECHO filename var='%filename%' - if showing var='' expansion failed
Я вижу SetVar дисплея правильного ответа, но т он момент, когда он покидает setvar.bat %filename%
не существует
На данный момент я решил мою проблему путем перемещения техники из setcmdvar непосредственно в сценарий, его не пригодно для повторного использования, но он работает –