2010-03-09 205 views
6

我有一個完全依賴PUSHD的偉大腳本。但突然當我輸入pushd \\server1\dir1我越來越:什麼可能導致PUSHD失敗?

C:\Documents and Settings\userNameHere>pushd \\server1\dir1 
' ' 
CMD does not support UNC paths as current directories. 

OK,我知道,CMD不支持UNC路徑。這就是我使用PUSHD的原因。當我搜索這個時,我發現很多帖子都說「當你遇到這條有關UNC路徑的消息時,你應該使用PUSHD!」。那麼廢話,我遇到了使用PUSHD的消息

我試過使用CMD /E:ON,因爲PUSHD只有在命令擴展被啓用時才被激活。同樣的結果。

我期待看看我是不是出了驅動器號(因爲PUSHD從Z開始:然後往後找到驅動器號)。不。

我試着從c:\ dir開始我的cmd(cd c:\,然後pushd \\server1\dir1)。

我確認驅動器在那裏,我可以通過Windows資源管理器訪問它。

現在我沒有想法。

PUSHD參考:Link

回答

5

確定這個問題的答案,據我所知,如果你在Y:在你的映射驅動器中,那麼pushd將不起作用。所以你需要做net use y: /delete(或其他一些驅動器盤符),然後使用pushd映射你的驅動器。我已經映射了所有的驅動器字母,除了Z和A以外。也許Z是保留的?我不知道。

我的錯誤是檢查Z:是否可用(它未映射)。顯然,如果你已經映射了一切,包括Y:那麼它將不映射Z :.不知道爲什麼。

+0

您也可以右鍵單擊我的電腦中的映射驅動器,然後單擊「斷開連接」。 – ThePersonWithoutC 2016-05-24 19:49:58

0

豈不映射驅動器字母像往常一樣會做的伎倆之前「PUSHD」 ......在你的榜樣

 
net use E: \\\\server1\\dir1 
pushd E:\ 
.... 
popd 
+0

pushd不應該依賴淨使用。 pushd的目的是'找出來':映射一個驅動器並將pwd改爲它。 – jcollum 2010-03-09 18:38:17

1

您需要確保啓用命令擴展。

的註冊表項:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions 
and/or 
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions 

設置爲0x1(啓用)或0x0(禁用)。用戶特定設置優先於機器設置。

還要確保有pushd命令可用的驅動器號。如果所有驅動器號已被映射並正在使用,則命令將以您詳細描述的相同方式失敗。

相關問題