2016-12-14 54 views
0

如果您有一個程序可以通過管道將某些輸入文本轉換爲替代輸出文本,那麼您可以將另一個命令的輸出重定向到第一個程序生成的文件名嗎?是否有可能通過管道程序轉換名稱的文件?

echo Hello > source/somedir/somefile.txt | somepipeprogram 

以上可能是錯誤的語法,你好在結束了字。\源\ 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顯示正確答案而T3他時刻離開setvar.bat %filename%

+0

在我已經通過移動從setcmdvar技術直接到腳本解決我的問題的那一刻,它不是可重複使用的,但它確實工作 –

回答

0

回聲你好>somepipeprogram

回聲你好> $(somepipeprogram)

還取決於或您的外殼不存在。

(我明明假設一些Unixy殼狀慶典在這裏。)

+0

落後一些管道程序周圍的指示牌跡象 – user2496748

+0

反向信息仍然寫了一個名爲somepipeprogram的文件而不是其他任何東西 –

相關問題