0

当我运行批处理文件时,输出包含执行的每个命令的命令提示符。我想收集执行的命令,但我不想要提示(即目录)。我可以sed -e 's/^.:[^>]*>'删除提示,但也可能删除一些有效的输出。

有没有办法不回显运行命令的目录?

4

2 回答 2

2

您可以在脚本中更改提示(请参阅 参考资料prompt /?)。此示例将提示设置为单个空格。

SETLOCAL
prompt $S

:: do stuff

我不知道如何将提示更改为nothing,但是如果您希望输出可读,我可能会将其更改为简短而独特的内容,例如>>>

SETLOCAL
prompt $G$G$G$S

例如,这个脚本

@ECHO OFF
SETLOCAL

PROMPT $G$G$G$S

dir /b
time /t
date /t

产生这个输出:

>>> dir /b 
bang.cmd
bang.txt
date1.cmd
list.txt
list_complete.txt
pmpt.cmd
q2.cmd
temp.zip
temp_orig.zip
timetest.cmd
z.cmd

>>> time /t 
01:17 PM

>>> date /t 
Fri 06/28/2013 
于 2013-06-28T18:18:54.927 回答
1

您需要更改提示。请参阅http://www.computerhope.com/prompthl.htm。例如,您可以将其设置为$_(回车和换行):prompt $_$H(退格): prompt $H。我不知道是否有办法将其设置为空。

于 2013-06-28T18:13:53.423 回答