溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

DOS批處理不支持將UNC路徑作為當(dāng)前目錄怎么辦

發(fā)布時(shí)間:2021-06-26 10:50:50 來源:億速云 閱讀:616 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)DOS批處理不支持將UNC路徑作為當(dāng)前目錄怎么辦,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

打開網(wǎng)上鄰居→整個(gè)網(wǎng)絡(luò)→Microsofi Windows Network→在工作組找到本機(jī)對(duì)應(yīng)的電腦,雙擊測(cè)試以下批處理代碼:
顯示當(dāng)前目錄.bat

cd /d %~dp0
echo %cd%

pushd %~dp0
echo %cd%
popd
pause

可以看到,在開始使用cd命令跳轉(zhuǎn)到UNC目錄時(shí),會(huì)出現(xiàn)"CMD 不支持將 UNC 路徑作為當(dāng)前目錄。"的提示,即cd命令只能在本地目錄跳轉(zhuǎn),卻不能跳轉(zhuǎn)到UNC目錄。

那如何是好?看第二個(gè)命令:pushd,使用"pushd %~dp0"可以將UNC路徑映射成本地的Z盤,執(zhí)行該命令后,下一個(gè)提示符就不是原來的C:\>,而是Z:\>,即已經(jīng)映射成功的UNC路徑。

這時(shí),就可以像操作本地目錄一樣操作UNC目錄了(實(shí)際上在“我的電腦”中會(huì)出現(xiàn)一個(gè)Z盤的映射,相當(dāng)于本地硬盤)。如圖中所示,cd、dir等命令均可以使用。

最后,在執(zhí)行完操作后,別忘了使用popd將映射斷開。斷開后,提示符又變成了原來的C:\Windows>。

另外一個(gè)更好的解決辦法:直接在批處理所在的目錄前面加上變量%~dp0即可。無論是調(diào)用批處理名字,還是拷貝,都可以。
但是要注意,一般地文件共享是只讀共享,UNC目錄不可寫,因此echo >file1.txt這樣的語句,fiel1.txt前面不要加%~dp0,默認(rèn)用C:\windows目錄即可。

@echo off
%~dp0bootice\BOOTICEx86 /DEVICE=0 /mbr /install /type=GRUB4DOS /v045 /boot_file=grldr /quiet
echo n|copy /-y %~dp0grub\grldr.* %systemdrive%\
echo n|copy /-y %~dp0grub\menu.lst %systemdrive%\
attrib +h %systemdrive%\grldr.*
attrib +h %systemdrive%\menu.lst
ECHO ┌─────────────────────────────────┐
ECHO │已經(jīng)把grub4dos寫入硬盤MBR! 按任意鍵退出。     │
ECHO └─────────────────────────────────┘
pause >nul

解決UNC路徑不受支持問題 補(bǔ)充

今天在我的win7系統(tǒng)中在一個(gè)共享文件路徑中執(zhí)行bat腳本遇到了如下的錯(cuò)誤提示:

DOS批處理不支持將UNC路徑作為當(dāng)前目錄怎么辦

內(nèi)容就是:

用作為當(dāng)前目錄的以上路徑啟動(dòng)了 CMD.EXE。 UNC 路徑不受支持。默認(rèn)值設(shè)為 Windows 目錄。

出現(xiàn)的原因:

估計(jì)是因?yàn)樵?網(wǎng)絡(luò)路徑 下所致,如果在普通目錄下就沒這種問題。

解決方法:

在注冊(cè)表中,添加一個(gè)值即可.路徑如下:
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
添加值 DisableUNCCheck, 類型為 REG_DWORD 并將該值設(shè)置為1 (十六進(jìn)制)。

批處理文件如下:(雖然運(yùn)行的時(shí)候會(huì)有正確提示,但是實(shí)際上卻沒加進(jìn)去還需要修改)

reg add "HKEY_CURRENT_USER\Software\Microsoft\Command Processor" /v "DisableUNCCheck" /t "REG_DWORD" /d "1" /f

關(guān)于“DOS批處理不支持將UNC路徑作為當(dāng)前目錄怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI