国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

DOS批處理不支持將UNC 路徑作為當前目錄的解決方法

2020-06-09 14:28:14
字體:
來源:轉載
供稿:網友

廢話少說,直接上代碼,打開網上鄰居→整個網絡→Microsofi Windows Network→在工作組找到本機對應的電腦,雙擊測試以下批處理代碼:
顯示當前目錄.bat

cd /d %~dp0echo %cd%pushd %~dp0echo %cd%popdpause

可以看到,在開始使用cd命令跳轉到UNC目錄時,會出現"CMD 不支持將 UNC 路徑作為當前目錄。"的提示,即cd命令只能在本地目錄跳轉,卻不能跳轉到UNC目錄。

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

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

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

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

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

解決UNC路徑不受支持問題 補充

今天在我的win7系統中在一個共享文件路徑中執行bat腳本遇到了如下的錯誤提示:

內容就是:

用作為當前目錄的以上路徑啟動了 CMD.EXE。 UNC 路徑不受支持。默認值設為 Windows 目錄。

出現的原因:

估計是因為在 網絡路徑 下所致,如果在普通目錄下就沒這種問題。

解決方法:

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

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 个旧市| 商洛市| 萨嘎县| 广西| 栾城县| 宝山区| 扎鲁特旗| 武定县| 蒲江县| 江陵县| 赣州市| 县级市| 普安县| 新和县| 怀仁县| 隆林| 屏山县| 南郑县| 保亭| 望谟县| 林西县| 达孜县| 绍兴县| 吉木乃县| 渝中区| 大竹县| 东乡族自治县| 济源市| 湟中县| 元朗区| 泽州县| 崇文区| 广灵县| 衡山县| 三穗县| 宝兴县| 涞水县| 湘潭县| 荣昌县| 登封市| 原阳县|