在WINDOWS下dos與批處理中的命令cd /d %~dp0及其用途
有人可以幫我理解命令cd /d %~dp0及其用途。 再次dos命令如下
cd /d %~dp0
請(qǐng)幫我弄清楚它的含義。
我們來剖析一下。 有三個(gè)部分:
cd– 這是更改目錄命令。/d– 這個(gè)開關(guān)讓cd改變驅(qū)動(dòng)器和目錄。 沒有它,你將不得不做cd %~d0 & cd %~p0。%~dp0– 這可以進(jìn)一步分為三個(gè)部分:%0– 這表示批處理腳本的第零個(gè)參數(shù)。 它擴(kuò)展到batch file本身的名稱。%~0– 在那里解開擴(kuò)展參數(shù)的雙引號(hào)(")。%dp0–d和p有擴(kuò)展的修飾符。d強(qiáng)制添加一個(gè)驅(qū)動(dòng)器號(hào)并添加完整path。
見for /? 更多細(xì)節(jié)
批處理文件中的一條語句意思是更改當(dāng)前目錄為批處理本身的目錄
有些暈吧?不急,我舉例
比如你有個(gè)批處理a.bat在D:\jb51文件夾下
a.bat內(nèi)容為
cd /d %~dp0
在這里
cd /d 注解:
(通常情況下,我們要進(jìn)入其他盤符下的任意目錄,需要在CMD窗口運(yùn)行兩次命令:第一次,進(jìn)入盤符,第二次進(jìn)入指定目錄
#進(jìn)入D盤
d:
#進(jìn)入D盤下的test目錄
cd jb51
通過使用CD命令,并加入?yún)?shù) /d ,可以通過一個(gè)步驟,直接進(jìn)入指定盤符下的任意文件夾。
#一個(gè)步驟進(jìn)入D盤下的test目錄
cd /d d:\jb51
)
cd /d %~dp0的意思就是cd /d d:\jb51
%0代表批處理本身 d:\jb51\a.bat
~dp是變量擴(kuò)充
d既是擴(kuò)充到分區(qū)號(hào) d:
p就是擴(kuò)充到路徑 \jb51
dp就是擴(kuò)充到分區(qū)號(hào)路徑 d:\jb51
到此這篇關(guān)于在WINDOWS下dos與批處理中的命令cd /d %~dp0及其用途的文章就介紹到這了,更多相關(guān)CD /D%?DP0內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
批處理代碼搞定Windows下Nginx+PHP(FastCGI)管理
今天在家沒事,自己用批處理寫了個(gè)Windows下的Nginx+PHP管理程序。2010-03-03
Emeditor與dos(cmd)經(jīng)典使用技巧之批量生成網(wǎng)頁
首先我們準(zhǔn)備好工具: 工作目錄:D:\jb51.txt 里邊放一個(gè)你的有內(nèi)容的index.html文件, 然后我們把要生成的網(wǎng)頁弄成這種格式:2008-06-06
dos里執(zhí)行tracert命令只有一跳的原因及解決方法
一直以來,我在家電腦DOS里執(zhí)行Tracert命令時(shí)都只看到只有一跳的返回結(jié)果,令我非常不解。我原以為是電信運(yùn)營(yíng)商那邊的問題,所以也就一直沒去追究是什么真正的原因2013-03-03
批處理bat下載FTP服務(wù)器上指定天數(shù)之前的文件
這篇文章主要介紹了批處理bat下載FTP服務(wù)器上指定天數(shù)之前的文件的實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-07-07
批處理中setlocal enabledelayedexpansion的作用詳細(xì)整理
設(shè)置本地為延遲擴(kuò)展。其實(shí)也就是:延遲變量,全稱延遲環(huán)境變量擴(kuò)展, 想進(jìn)階,變量延遲是必過的一關(guān)!所以這一部分希望你能認(rèn)真看。2011-12-12
復(fù)制文件到c盤windows文件夾下的system32的批處理寫法
三個(gè)文件復(fù)制到c盤windows文件夾下的system32文件夾 批處理怎么寫?本文提供解決方法,需要的朋友可以了解下2012-12-12

