bat程式設計

5957摸鱼笔记發表於2024-08-23

.bat 檔案(批處理檔案)是 Windows 系統中用於自動化執行一系列命令的指令碼檔案。下面是一些 .bat 檔案的基本語法和常用命令:

1. 註釋

  • 使用 REM 命令或 @echo off 後面的行(在 @echo off 生效的情況下)來新增註釋。註釋不會被執行,僅用於說明。

    REM 這是一個註釋
    @echo off
    :: 這也是一個註釋,但在 @echo off 模式下有效
    

2. 變數

  • 批處理檔案支援簡單的變數,使用 %變數名% 來引用變數。

    SET VAR=Hello
    ECHO %VAR%
    

3. 條件語句

  • 使用 IF 命令進行條件判斷。

    IF "%VAR%"=="Hello" (
        ECHO Variable is Hello
    ) ELSE (
        ECHO Variable is not Hello
    )
    

4. 迴圈

  • 使用 FOR 命令進行迴圈。

    FOR %%i IN (1 2 3) DO ECHO %%i
    

    對於檔案或目錄的迴圈:

    FOR %%f IN (*.txt) DO ECHO %%f
    

5. 呼叫外部命令和程式

  • 使用 start 命令來啟動一個外部程式或命令,並可以指定新的視窗。

    start notepad.exe
    start https://www.example.com
    
  • 直接呼叫命令或程式(不啟動新視窗)。

    notepad.exe
    

6. 檔案操作

  • 批處理檔案本身不直接支援複雜的檔案操作,但可以使用外部命令如 copymovedelren 等進行基本的檔案操作。

    copy source.txt destination.txt
    move oldfile.txt newfolder\
    del unwanted.txt
    ren oldname.txt newname.txt
    

7. 輸入輸出重定向

  • 使用 >>> 進行輸出重定向,< 進行輸入重定向。

    echo Hello > output.txt
    echo Another line >> output.txt
    type input.txt | findstr "text"
    

8. 呼叫其他批處理檔案

  • 直接在 .bat 檔案中呼叫另一個 .bat 檔案。

    call another_batch_file.bat
    

9. 延遲變數擴充套件

  • 在某些複雜的批處理指令碼中,可能需要使用 setlocal enabledelayedexpansion 來啟用延遲變數擴充套件,以便在迴圈或條件語句中正確地修改和訪問變數。

    setlocal enabledelayedexpansion
    for %%i in (1 2 3) do (
        set VAR=Value%%i
        echo !VAR!
    )
    endlocal
    

10. 退出批處理檔案

  • 使用 exit 命令退出批處理檔案的執行,可選地指定一個退出碼。

    exit /b 0
    

相關文章