2013-08-30 51 views
0

我對批處理腳本相當陌生,而且我需要編寫一個非常簡單的.bat文件來循環目錄。我知道如何做到這一點很容易地使用GoTo命令:有沒有辦法在沒有gotos的批處理文件中循環?

@echo off 
:BEGIN 
::set variable to data in first file 
::do operations on file... 
IF ::another file exists in the directory 
    ::increment to next file 
    GOTO BEGIN 
ELSE 
    GOTO END 
:END 
cls 

的問題是,是我能想到的做到這一點的唯一途徑。我知道goto's通常很不習慣使用,所以我想知道是否有人知道另一種方式來做到這一點?謝謝!

+3

批處理是「不使用goto」規則的例外,因爲在大多數情況下,避免使用Goto會使您的代碼更加複雜和難以閱讀。只要確保您的標籤一致,清晰等。 – ChicagoRedSox

+2

您可以使用'FOR'循環。 http://stackoverflow.com/questions/1355791/batch-file-loop – JNYRanger

回答

2

用你想要的命令替換echo .... 從命令提示符:

for /R %A in (*.*) do echo.%A

在一個bat文件

for /R %%A in (*.*) do echo.%%A 
0

它可以只對當前文件夾來完成了。 %% a元變量區分大小寫,我選擇使用小寫。處理所有文件後,該腳本將退出並退出。

@echo off 
for %%a in (*.txt) do (
type "%%a" 
pause 
) 
相關問題