2012-03-06 41 views

回答

2

批處理中沒有高級命令替換。

你可以做不過:

FOR /F "tokens=* delims=" %%I IN ('echo %date%') DO echo %%I 

(使用單一百分號如果在交互模式下,在蝙蝠雙百分號或.cmd)。

如果你想反引號:

FOR /F "usebackq tokens=* delims=" %%I IN (`echo %date%`) DO echo %%I 

所以:

FOR /F "usebackq tokens=* delims=" %%I IN (`bla bla bla`) DO SET blablaresult=%%I 
echo %date%%time%%blablaresult% 
+0

o.O這可能是我見過的最複雜的方式,只是說'echo%date%'。你甚至痛苦地確信結果*完全相同。 – Joey 2012-03-06 15:17:07

+0

@Joey:最後只使用'echo'作爲例子,但這是爲了表明你可以操作'%% I'。 – Benoit 2012-03-06 15:18:59

+0

日期和時間很明確,但是bla-bla-bla呢? – vinnitu 2012-03-07 13:48:26

0

在命令行就試試這個....

@echo %date% %time% bla bla bla 
+0

bla-bla-bla - command too – vinnitu 2012-03-06 15:21:34

+0

對不起,我誤解了你的模糊問題。 – 2012-03-06 19:06:27

1

您可以在日期和時間得到值使用預定義的動態變量%date%和%time% - 不需要使用命令。你可以將它與FOR循環結合起來處理'bla bla bla'命令的輸出。

for /f "delims=" %%A in ('"bla bla bla"') do @echo %date% %time% %%A 

如果來自命令管線(未內一個批處理文件)運行然後%% A變得%A。