2017-02-25 57 views
-1

所以,我在cmd中添加了一些東西。我希望在那裏有一個使用文本的進度條,所以它就像[.........],但是當我輸入CLS清除線和ECHO重做一個額外的,CLS清除整個屏幕。我希望它只清除一行!我該怎麼做?如何清除cmd的一行?

我知道有沒有這樣做的命令,但使用FOR命令,有可能與FOR和其他一些東西(但不是任何第三方)做到這一點?

我希望答案是肯定的。

這裏有我想要的一個例子,不想:

https://ou.wistia.com/medias/xkxld1i3vy

這沒有做什麼,我需要!我不想下載任何其他東西!只需從您的答案中複製代碼即可!

+2

「!只要將代碼從你的答案複製」不好的想法在這裏寫這 – Fureeish

+0

也許通過打印退格,可以從批處理文件中完成:http://superuser.com/questions/82929/how-to-overwrite-the-same-line-in-command-output-批處理文件 –

+0

請詳細說明屏幕上出現的三個點的視頻如何同時滿足您的要求和不想要的。 – SomethingDark

回答

1

使用這樣的事情:

@echo off 
setlocal enableDelayedExpansion 

:: Define CR to contain a carriage return (0x0D) 
for /f %%A in ('copy /Z "%~dpf0" nul') do set "CR=%%A" 

<nul set/p"=[*............]!CR!" 
pause >nul 
<nul set/p"=[**...........]!CR!" 
pause >nul 
<nul set/p"=[***..........]!CR!" 
pause >nul 

From here

+0

非常感謝! – user19393