千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > BAT獲取當前目錄用法介紹

BAT獲取當前目錄用法介紹

來源:千鋒教育
發布人:xqq
時間: 2023-11-22 15:28:22 1700638102

一、獲取當前目錄的方法

在BAT文件中,獲取當前目錄的方法有多種,可以使用CD命令,也可以使用%CD%環境變量,還可以使用PUSHD命令實現。下面我們將詳細介紹這三種方法。

1. CD命令

CD命令是DOS/Windows系統中常用的命令之一,它可以切換當前目錄到指定的目錄,并返回改變后的目錄。如果使用CD命令后不加任何參數,則返回當前目錄。


    @echo off
    cd
    echo 當前目錄:%CD%

在上面的示例中,我們使用CD命令來獲取當前目錄。該命令會返回當前目錄,并存儲在%CD%環境變量中,我們可以使用echo %CD%來輸出當前目錄。

2. %CD%環境變量

%CD%環境變量是DOS/Windows系統中自帶的一個環境變量,它存儲當前目錄的完整路徑。通過讀取%CD%環境變量的值,我們可以獲取當前目錄。


    @echo off
    echo 當前目錄:%CD%

在上面的示例中,我們直接輸出%CD%的值即可獲取當前目錄。

3. PUSHD命令

PUSHD命令是CD命令的加強版,它可以將當前目錄壓入一個目錄棧中,并切換到指定的目錄。使用POPD命令可以將目錄棧的棧頂元素彈出,并切換到該目錄。PUSHD命令可以將當前目錄壓入棧中,并且返回棧中的上一個目錄,這樣我們就可以獲取當前目錄了。


    @echo off
    pushd %~dp0
    echo 當前目錄:%CD%
    popd

在上面的示例中,我們使用pushd命令將當前目錄壓入目錄棧,并返回該目錄,然后輸出%CD%環境變量的值來獲取當前目錄。最后使用popd命令將目錄棧的棧頂元素彈出,恢復目錄。

二、獲取當前目錄的應用

獲取當前目錄是BAT文件中最常用的操作之一,它可以用來查找文件、運行其他程序、創建/刪除文件夾等。下面我們將結合示例來介紹獲取當前目錄的應用。

1. 查找指定文件

假設我們需要在當前目錄及其子目錄中查找一個名為test.bat的文件,并輸出文件路徑。那么可以使用如下代碼:


    @echo off
    for /r "%CD%" %%i in (test.bat) do (
        echo %%i
    )

在上面的示例中,我們使用for命令和/r參數來遞歸查找當前目錄及其子目錄下的所有文件,然后通過判斷文件名是否為“test.bat”,來輸出符合條件的文件路徑。

2. 運行其他程序

有時候我們需要在BAT文件中調用其他程序,比如Python程序,可以使用以下代碼:


    @echo off
    set path=%path%;C:\Python37
    python myprogram.py

在上面的示例中,我們將Python的安裝目錄添加到%PATH%環境變量中,然后運行myprogram.py文件。由于Python程序需要調用當前目錄下的其他文件,因此需要獲取當前目錄。

3. 創建/刪除文件夾

BAT文件中經常需要創建/刪除文件夾,可以使用下面的代碼來實現:


    @echo off
    set folderName=newFolder
    md "%CD%\%folderName%"
    rd "%CD%\%folderName%"

在上面的示例中,我們首先設置一個文件夾名稱為newFolder,然后使用md命令創建該文件夾,并將其保存在當前目錄下。最后使用rd命令刪除該文件夾。

三、小結

獲取當前目錄是BAT文件中非常重要的操作,它可以避免路徑錯誤導致的程序無法運行或錯誤運行的問題。在獲取當前目錄時,我們可以使用CD命令、%CD%環境變量和PUSHD命令等多種方法。根據不同的應用場景,我們可以結合其他命令和操作來實現具體的功能。

tags: blf文件
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
色综合久久综合网欧美综合网 | 中文字幕精品久久久 | 日韩欧美另类亚洲中文字幕 | 午夜男女爽爽刺激视频在线观看 | 亚洲成a人片在线观看专区 在线观看AV中文字幕不卡 | 日韩中文在线观看 |