DOS批處理中獲取當前路徑的命令

2021-10-05 23:20:58 字數 612 閱讀 3164

在dos的批處理中,有時候需要知道當前的路徑。

在dos中,有兩個環境變數可以跟當前路徑有關,乙個是%cd%, 乙個是%~dp0。

這兩個變數的用法和代表的內容是不同的。

%cd% 可以用在批處理檔案中,也可以用在命令列中;

展開後,是驅動器碟符:+當前目錄,如在dos視窗中進入c:\dir目錄下面,

輸入:echo %cd% ,則顯示為:c:\dir 。

%cd%的內容是可以被改變的,其內容為命令的執行路徑或批處理檔案的執行路徑。

%~dp0只可以用在批處理檔案中,它是由它所在的批處理檔案的目錄位置決定的,

是批處理檔案所在的碟符:+路徑。在執行這個批處理檔案的過程中,它展開後的內容是不可以改變的。比如在d盤下有個批處理檔案,path.bat,其內容為:

@echo off     

echo this is %%cd%% %cd%

echo this is %%~dp0 %~dp0

在c:\ 和e:\分別下執行它,輸出為:

批處理獲取當前路徑

原文 在批處理中使用管理員許可權執行的時候系統會認為當前路徑是c windows system32 而使用非管理員許可權安裝的時候系統會認為當前路徑就是批處理檔案所在的路徑 所以我們最好使用絕對路徑去操作檔案,以下是絕對路徑的獲取方式 echo off echo 當前碟符 d0 echo 當前碟符和...

C 獲取當前路徑,獲取當前路徑的上一層路徑

c 獲取當前路徑的方法如下 1 string path1 system.environment.currentdirectory c bin debug 獲取和設定當前工作目錄 該程序從中啟動的目錄 的完全限定目錄。2 string path2 system.io.directory.getcurr...

當前路徑獲取的問題

函式 dword getcurrentdirectory dword nbufferlength,size,in characters,of directory buffer lptstr lpbuffer pointer to buffer for current directory 獲得可執行檔...