濮阳杆衣贸易有限公司

主頁 > 知識庫 > 批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼

批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼

熱門標(biāo)簽:玉林市機(jī)器人外呼系統(tǒng)哪家好 清遠(yuǎn)百度地圖標(biāo)注店鋪位置 雷霆電銷機(jī)器人怎么樣 電話機(jī)器人產(chǎn)品怎么樣 如何弄地圖標(biāo)注 電話機(jī)器人全國招商 智能打電話機(jī)器人收費(fèi) 呼倫貝爾外呼系統(tǒng) 如何申請400電話業(yè)務(wù)mm

批處理命令獲取當(dāng)前盤符和當(dāng)前目錄

當(dāng)前盤符:%~d0
當(dāng)前路徑:%cd%
當(dāng)前執(zhí)行命令行:%0
當(dāng)前bat文件路徑:%~dp0
當(dāng)前bat文件短路徑:%~sdp0

測試

echo 當(dāng)前盤符:%~d0
echo 當(dāng)前路徑:%cd%
echo 當(dāng)前執(zhí)行命令行:%0
echo 當(dāng)前bat文件路徑:%~dp0
echo 當(dāng)前bat文件短路徑:%~sdp0

效果如下圖所示

上面的例子是不是發(fā)現(xiàn)文件路徑與文件短路徑是一樣的, 因?yàn)槲覀兊臏y試的文件夾過于短。

如果目錄 是F:\LudashiDownloads\

可以用echo %cd%進(jìn)行打印測試

windows 的快捷方式不能使用相對路徑??梢杂门幚砦募@取相對路徑。
set pa=%cd% 將當(dāng)前路徑賦值給pa
echo %pa% 顯示pa變量

以下例子是命令行編譯Visual Studio編寫的程序:

@echo off
set b=%cd% //將當(dāng)前目錄保存到參數(shù)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

注意:如果路徑中包含空格,則應(yīng)該將路徑加文件名用雙引號括起來。

廢話不多說,直接看例子:

@echo off
echo 當(dāng)前盤符:%~d0
echo 當(dāng)前盤符和路徑:%~dp0
echo 當(dāng)前盤符和路徑的短文件名格式:%~sdp0
echo 當(dāng)前批處理全路徑:%~f0
echo 當(dāng)前CMD默認(rèn)目錄:%cd%
pause

通過批處理取當(dāng)前目錄的上一級目錄

@echo off
if %cd%==%cd:~,3% echo 當(dāng)前目錄已經(jīng)是%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.
上面的程序我運(yùn)行并測試,分別在第一級目錄,第二級目錄,第三級目錄,第四級目錄,都執(zhí)行,程序的最終結(jié)果不太正確,這里只給你個(gè)思路,以及對各級目錄的獲取方法僅供參考。

腳本之家小編以前用的一個(gè)bat,方便刪除文件夾里面的說明與復(fù)制自己的說明

@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

代碼比較簡單啊,不懂的自行百度一下

關(guān)于%~dp0的批處理命令的詳細(xì)解釋

對此命令并不清楚,以下內(nèi)容都來自互聯(lián)網(wǎng):

%~dp0 “d”為Drive的縮寫,即為驅(qū)動(dòng)器,磁盤、“p”為Path縮寫,即為路徑,目錄

cd是轉(zhuǎn)到這個(gè)目錄,不過我覺得cd /d %~dp0 還好些

選項(xiàng)語法:

~0 - 刪除任何引號("),擴(kuò)充 %0

%~f0 - 將 %0 擴(kuò)充到一個(gè)完全合格的路徑名(“f”是file,即文件)

%~d0 - 僅將 %0 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號

%~p0 - 僅將 %0 擴(kuò)充到一個(gè)路徑

%~n0 - 僅將 %0 擴(kuò)充到一個(gè)文件名(“n”是name 文件名)

%~x0 - 僅將 %0 擴(kuò)充到一個(gè)文件擴(kuò)展名

%~s0 - 擴(kuò)充的路徑只含有短名(“s”為Short,短的)

%~a0 - 將 %0 擴(kuò)充到文件的文件屬性(“a”為attribute,即屬性)

%~t0 - 將 %0 擴(kuò)充到文件的日期/時(shí)間(“t”time)

%~z0 - 將 %0 擴(kuò)充到文件的大小(Size 大小)

%~$PATH:0 - 查找列在路徑環(huán)境變量的目錄,并將 %0 擴(kuò)充

到找到的第一個(gè)完全合格的名稱。如果環(huán)境變量名

未被定義,或者沒有找到文件,此組合鍵會(huì)擴(kuò)充到

空字符串

可以組合修飾符來得到多重結(jié)果:

%~dp0 - 僅將 %0 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號和路徑

%~nx0 - 僅將 %0 擴(kuò)充到一個(gè)文件名和擴(kuò)展名

%~fs0 - 僅將 %0 擴(kuò)充到一個(gè)帶有短名的完整路徑名

%~dp$PATH:0 - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)充

到找到的第一個(gè)驅(qū)動(dòng)器號和路徑。

%~ftza0 - 將 %0 擴(kuò)充到類似輸出線路的 DIR

%0為當(dāng)前批處理文件

如果0換成1為第一個(gè)文件,2為第2個(gè)

%0代指批處理文件自身

%~d0 是指批處理所在的盤符

%~dp0 是盤符加路徑

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

下面是自動(dòng)備份植物大戰(zhàn)僵尸的水池?zé)o盡版的存檔的bat

set mubiaomulu=%~dp0
echo %mubiaomulu%
copy C:\ProgramData\PopCap Games\PlantsVsZombies\userdata\game1_13.dat %mubiaomulu%game1_13.dat
pause

到此這篇關(guān)于批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼的文章就介紹到這了,更多相關(guān)獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • 獲取外網(wǎng)IP地址的批處理代碼
  • 批處理獲取IP生成TXT文本的bat代碼
  • 批處理獲取網(wǎng)卡名稱的代碼(附修改IP、網(wǎng)關(guān)、DNS腳本)
  • 批處理(bat)實(shí)現(xiàn)全盤搜索指定文件獲取其完整路徑方法大全
  • 批處理獲取文件夾下面txt文件行數(shù)并添加到文件名后

標(biāo)簽:白銀 江西 三門峽 蕪湖 樂山 株洲 公主嶺 臺州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼》,本文關(guān)鍵詞  批處理,bat,命令,獲取,當(dāng)前,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于批處理bat命令 獲取當(dāng)前盤符和當(dāng)前目錄和上級目錄的代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    县级市| 阿拉善盟| 威宁| 同心县| 于田县| 庆城县| 河源市| 津市市| 鹤岗市| 祁连县| 利川市| 太原市| 重庆市| 沙河市| 永城市| 英吉沙县| 永福县| 岢岚县| 尤溪县| 合山市| 江油市| 隆子县| 澄城县| 平湖市| 博兴县| 石首市| 蓬溪县| 通山县| 孝昌县| 张家界市| 凌海市| 阿勒泰市| 南宁市| 宝山区| 师宗县| 砚山县| 昆山市| 信宜市| 红原县| 阿图什市| 永安市|