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


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

以下例子是命令行編譯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
===============================================================

通過批處理取當前目錄的上一級目錄
@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

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM