2014-11-03 63 views
0

我已經搜索並搜索到了這個,我找不到答案。也許這是不可能的。我想爲整個批處理作業「回聲消除」,但我想要某些行回聲。Windows批處理作業如何在回顯關閉時回顯命令

我知道我可以把@放在每一行的前面,只是把@關掉我想要回顯的任何行。

但是,有沒有辦法做到:

echo off 
call setver 
if not exist todir md todir 
copy myfile.exe todir 

我想沒有什麼呼應,除了「複製」的聲明......

+0

什麼引發了這個問題? (爲什麼你需要?) – 2014-11-03 21:25:57

回答

1
@echo off 
call setver 
if not exist todir md todir 
ECHO ON 
copy myfile.exe todir 
@ECHO OFF 

應該做你想要什麼,IIUC。

和必然跟進,「你怎麼迴應這個詞‘的’`

echo(on 

其中(可以是任何常用的船員像.

+0

好的,謝謝你。我已經這樣做了,但我希望有一種與@相反的方式,即「回顯這條線」,因此我不必在整個工作過程中「回顯/回顯」對,但我想這可能沒有其他辦法... – munge 2014-11-03 15:54:54

+0

在一個清晰的磁盤上... – Magoo 2014-11-03 16:00:38

0

你也可以在執行前回顯命令本身。

@echo off 
call setver 
if not exist todir md todir 
echo copy myfile.exe todir 
copy myfile.exe todir 

如可以看出,該命令顯示可見的只是複製文件和echo放在前面。這也適用於在命令行中引用的環境變量。

只能在包含重定向的命令時注意,因爲重定向角括號必須用^轉義以輸出角括號而不是重定向消息。例如:

@echo off 
echo set ^>"%TEMP%\AllVariables.txt" 
set >"%TEMP%\AllVariables.txt" 
del "%TEMP%\AllVariables.txt" 
相關問題