DOS批處理中%cd%和%~dp0的區別this
在DOS的批處理中,有時候須要知道當前的路徑。.net
在DOS中,有兩個環境變量能夠跟當前路徑有關,一個是%cd%, 一個是%~dp0。
命令行
這兩個變量的用法和表明的內容是不一樣的。
get
1. %cd% 能夠用在批處理文件中,也能夠用在命令行中;class
展開後,是驅動器盤符:+當前目錄,如在dos窗口中進入c:\dir目錄下面, www.2cto.com 變量
輸入:echo %cd% ,則顯示爲:c:\dir 。
im
%cd%的內容是能夠被改變的,其內容爲命令的執行路徑或批處理文件的執行路徑。img
2.%~dp0只能夠用在批處理文件中,它是由它所在的批處理文件的目錄位置決定的,di
是批處理文件所在的盤符:+路徑。在執行這個批處理文件的過程當中,環境變量
它展開後的內容是不能夠改變的。好比在D盤下有個批處理文件,path.bat,其內容爲:
[plain]
@echo off
echo this is %%cd%% %cd%
echo this is %%~dp0 %~dp0
在C:\ 和E:\分別下執行它,輸出爲: