批處理bat命令--獲取當前盤符和當前目錄和上級目錄

批處理命令獲取當前盤符和當前目錄
%~d0 是當前盤符
%cd% 是當前目錄
能夠用echo %cd%進行打印測試html

如下例子是命令行編譯Visual Studio編寫的程序:
@echo off
set b=%cd% //將當前目錄保存到參數b中,等號先後不要有空格
C:
cd program files
cd microsoft visual studio
cd common
cd msdev98
cd bin
msdev "%b%\test.dsp" /MAKE "test- Win32 Release" /REBUILD //(VC6.0)
devenv "%b%\Tool Utility\Tool Utility.sln" /REBUILD //(VS2010)
pause
注意:若是路徑中包含空格,則應該將路徑加文件名用雙引號括起來。
出處:http://blog.csdn.net/ylmmee/article/details/6735907
===============================================================測試

廢話很少說,直接看例子:
@echo off
echo 當前盤符:%~d0
echo 當前盤符和路徑:%~dp0
echo 當前盤符和路徑的短文件名格式:%~sdp0
echo 當前批處理全路徑:%~f0
echo 當前CMD默認目錄:%cd%
pause
http://www.2cto.com/kf/201104/88450.html
===============================================================url

經過批處理取當前目錄的上一級目錄
@echo off
if %cd%==%cd:~,3% echo 當前目錄已是%cd:~,1%盤的根目錄!&goto end
cd..
set "bd=%cd%"
cd..
set "bbd=%cd%"
if "%bbd%"=="%bd%" (echo 上一級目錄是: %cd:~,1%盤的根目錄!
) else call echo 上一級目錄是: "%%bd:%bbd%\=%%"
:end
pause.net

P.S.
  上面的程序我運行並測試,分別在第一級目錄,第二級目錄,第三級目錄,第四級目錄,都執行,程序的最終結果不太正確,這裏只給你個思路,以及對各級目錄的獲取方法僅供參考。
出處:http://zhidao.baidu.com/link?url=_3ufT92hvTrxF0VInIX4yvUEvqHQ448_97glGBZAXn-8Swioc3RKjGggfPsxPi1h8uUkcV5ye0jNNA3CLQmhjq命令行

相關文章
相關標籤/搜索