2015-10-19 53 views
1

我从管道中获得了一个值到一个变量dd1。如何从与管道相关的块中导出变量?

但我不能导出一个变量出块。

如何将变量导出了块涉及管道的?


例批处理脚本:

@回响

(日期/吨)| (设定/ P zDate = &呼叫设定zDate = %% zDate:〜0,4 %% &呼叫回波 可能的:%% zDate %%)

回声不可能的:%zDate%

暂停> NUL

出口0


Result : 
------------------------------------------- 

Possible: 2015 
ImPossible: 


为什么不能导出一个变量zDate了块?



请回答我。

谢谢。

回答

0

那么一旦管块内的变量结束,环境的变化而默认的文件和变量都将丢失。我能想到的唯一解决方法是将变量导出到临时文件中,该文件在管道结束后由缺省批处理读取。也许:

@echo off 

(date /t) | (set /p zDate=& call set zDate=%%zDate:~0,4%% & call echo Possible: %%zDate%% & call echo %%zDate%%^>%temp%\zDate.txt) 

set /p zDate=<%temp%\zDate.txt 
echo Impossible: %zDate% 

pause >nul 

exit 0 

是你想要的?如果不是,请让我知道,我会更新答案!

_Arescet