佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > DOS批處理中%~dp0等擴(kuò)充變量語(yǔ)法詳解

DOS批處理中%~dp0等擴(kuò)充變量語(yǔ)法詳解

熱門(mén)標(biāo)簽:智能手機(jī) 服務(wù)器配置 檢查注冊(cè)表項(xiàng) 銀行業(yè)務(wù) 鐵路電話(huà)系統(tǒng) 美圖手機(jī) 網(wǎng)站文章發(fā)布 呼叫中心市場(chǎng)需求

有時(shí)候我們看到別人使用%~dp0

~是擴(kuò)展的意思,相當(dāng)于把一個(gè)相對(duì)路徑轉(zhuǎn)換絕對(duì)路徑
%0代指批處理文件自身
%1表示批處理文件命令行接收到的第一個(gè)參數(shù),%2表示第二個(gè),以此類(lèi)推
%~d0 是指批處理所在的盤(pán)符,其中d代表drive
%~p0 是指批處理所在的目錄,其中p代表path
%~dp0 是批處理所在的盤(pán)符加路徑

cd %~dp0 就是進(jìn)入批處理所在目錄了

詳細(xì)解釋還可參考命令 call /?

DOS批處理中%~dp0表示什么意思

(注:%0就是該batch文件的文件名 )

這句的意思是
更改當(dāng)前目錄為批處理本身的目錄
有些暈吧?不急,我舉例
比如你有個(gè)批處理a.bat在E:/jb51文件夾下
a.bat內(nèi)容為
cd /d %~dp0
在這里
cd /d %~dp0的意思就是cd /d e:/jb51
%0代表批處理本身 e:/jb51/a.bat
~dp是變量擴(kuò)充
d既是擴(kuò)充到分區(qū)號(hào) e:
p就是擴(kuò)充到路徑 /jb51
dp就是擴(kuò)充到分區(qū)號(hào)路徑 e:/jb51

下面給個(gè)圖

擴(kuò)充變量語(yǔ)法詳解:
:: 選項(xiàng)語(yǔ)法 :
:: ~I - 刪除任何引號(hào) (") ,擴(kuò)充 %I
:: %~fI - 將 %I 擴(kuò)充到一個(gè)完全合格的路徑名
:: %~dI - 僅將 %I 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)
:: %~pI - 僅將 %I 擴(kuò)充到一個(gè)路徑
:: %~nI - 僅將 %I 擴(kuò)充到一個(gè)文件名
:: %~xI - 僅將 %I 擴(kuò)充到一個(gè)文件擴(kuò)展名
:: %~sI - 擴(kuò)充的路徑只含有短名
:: %~aI - 將 %I 擴(kuò)充到文件的文件屬性
:: %~tI - 將 %I 擴(kuò)充到文件的日期 / 時(shí)間
:: %~zI - 將 %I 擴(kuò)充到文件的大小
:: %~$PATH:I - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)充
:: 到找到的第一個(gè)完全合格的名稱(chēng)。如果環(huán)境變量名
:: 未被定義,或者沒(méi)有找到文件,此組合鍵會(huì)擴(kuò)充到
:: 空字符串
:: 可以組合修飾符來(lái)得到多重結(jié)果 :
:: %~dpI - 僅將 %I 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)和路徑
:: %~nxI - 僅將 %I 擴(kuò)充到一個(gè)文件名和擴(kuò)展名
:: %~fsI - 僅將 %I 擴(kuò)充到一個(gè)帶有短名的完整路徑名
:: %~dp$PATH:i - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)充
:: 到找到的第一個(gè)驅(qū)動(dòng)器號(hào)和路徑。
:: %~ftzaI - 將 %I 擴(kuò)充到類(lèi)似輸出線(xiàn)路的 DIR

下面是實(shí)例解析:

如果一個(gè)install.bat文件位于D:\jeesite\bin
文件內(nèi)容如下:

@echo off
echo [INFO] This is a demo.
echo [INFO] %~dp0
pause

運(yùn)行install.bat,命令行輸出如下

[INFO] This is a demo.
[INFO] D:\jeesite\bin\

即:
%0代表文件本身
d代表盤(pán)符
p代表路徑
擴(kuò)展的選項(xiàng)還包括:

%~f0 - 完整的路徑+文件名

[INFO] D:\jeesite\bin\install.bat

%~n0 - 文件名(無(wú)擴(kuò)展名)

[INFO] install
%~x0 - 文件擴(kuò)展名

[INFO] .bat

%~s0 - 擴(kuò)充的路徑只含有短名(“s”為Short,短的)
%~a0 - 將 %0 擴(kuò)充到文件的文件屬性(“a”為attribute,即屬性)
%~t0 - 將 %0 擴(kuò)充到文件的日期/時(shí)間(“t”time)
%~z0 - 將 %0 擴(kuò)充到文件的大小(Size 大小)

等等

標(biāo)簽:長(zhǎng)治 河南 滄州 樂(lè)山 沈陽(yáng) 新疆 紅河 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《DOS批處理中%~dp0等擴(kuò)充變量語(yǔ)法詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話(huà)咨詢(xún)

    • 400-1100-266
    肥西县| 贵德县| 清远市| 永修县| 洞头县| 固阳县| 潼南县| 绩溪县| 信宜市| 靖西县| 文化| 珲春市| 凤冈县| 昆山市| 湖北省| 来宾市| 嘉义市| 通州市| 东辽县| 安徽省| 临澧县| 武城县| 盱眙县| 手机| 县级市| 奉节县| 肇源县| 迁安市| 永兴县| 正蓝旗| 大埔县| 广丰县| 城固县| 苍山县| 同仁县| 固始县| 罗江县| 舟曲县| 沽源县| 清水河县| 军事|