批處理bat命令 獲取當前盤符和當前目錄和上級目錄的代碼
批處理命令獲取當前盤符和當前目錄
當前盤符:%~d0
當前路徑:%cd%
當前執(zhí)行命令行:%0
當前bat文件路徑:%~dp0
當前bat文件短路徑:%~sdp0
測試
echo 當前盤符:%~d0 echo 當前路徑:%cd% echo 當前執(zhí)行命令行:%0 echo 當前bat文件路徑:%~dp0 echo 當前bat文件短路徑:%~sdp0
效果如下圖所示
可以用echo %cd%進行打印測試
windows 的快捷方式不能使用相對路徑??梢杂门幚砦募@取相對路徑。
set pa=%cd% 將當前路徑賦值給pa
echo %pa% 顯示pa變量
以下例子是命令行編譯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
注意:如果路徑中包含空格,則應該將路徑加文件名用雙引號括起來。
廢話不多說,直接看例子:
@echo off echo 當前盤符:%~d0 echo 當前盤符和路徑:%~dp0 echo 當前盤符和路徑的短文件名格式:%~sdp0 echo 當前批處理全路徑:%~f0 echo 當前CMD默認目錄:%cd% pause
通過批處理取當前目錄的上一級目錄
@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.
上面的程序我運行并測試,分別在第一級目錄,第二級目錄,第三級目錄,第四級目錄,都執(zhí)行,程序的最終結果不太正確,這里只給你個思路,以及對各級目錄的獲取方法僅供參考。
我們小編以前用的一個bat,方便刪除文件夾里面的說明與復制自己的說明
@echo off setlocal EnableDelayedExpansion del jb51.txt /s del 說明.htm /s copy F:\編輯\jb51tools\jb_down\book\ %cd% mkdir jb51.net del %0 | move *.* jb51.net
代碼比較簡單啊,不懂的自行百度一下
上一篇:使用winrar打包air程序為exe(包含air運行環(huán)境)
欄 目:DOS/BAT
本文標題:批處理bat命令 獲取當前盤符和當前目錄和上級目錄的代碼
本文地址:http://mengdiqiu.com.cn/a1/DOS_BAT/10131.html
您可能感興趣的文章


閱讀排行
本欄相關
- 01-10DOS下查看硬盤分區(qū)該使用什么命令
- 01-10使用批處理實現(xiàn)軟件的自動安裝以安
- 01-10后臺運行bat定時器程序示例分享
- 01-10通過批處理修改DNS的代碼(推薦)
- 01-10dota2服務器ping測試腳本分享
- 01-10再談DOS批處理下格式化日期字符串的
- 01-10windows使用批處理發(fā)布web到tomcat并啟動
- 01-10win7怎么設定關閉顯示器時間
- 01-10屏蔽up鍵禁止游戲運行腳本分享
- 01-10win7創(chuàng)建wifi熱點腳本分享
隨機閱讀
- 01-10C#中split用法實例總結
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10delphi制作wav文件的方法
- 01-10SublimeText編譯C開發(fā)環(huán)境設置
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-11ajax實現(xiàn)頁面的局部加載
- 08-05dedecms(織夢)副欄目數量限制代碼修改
- 04-02jquery與jsp,用jquery