次のようなファイルサーバーにディレクトリを変更しようとしています。
cd \\someServer\\someStuff\
ただし、次のエラーが発生します。
CMDは、UNCパスを現在のディレクトリとしてサポートしていません
そのディレクトリに移動するための私のオプションは何ですか?
スクリプトの作成を検討している場合は、pushd
コマンドとpopd
コマンドについて学ぶことが常に役立ちます。場合によっては、スクリプトが実行されるマシンでどのドライブ文字がすでに使用されているかわからないことがあり、次に使用可能なドライブ文字を取得するだけで済みます。 Net Use
はドライブを指定する必要があります。単にpushd \\server\folder
、次にpopd
を終了します。
または、シェルを PowerShell に切り替えることもできます。 UNCパスを完全にサポートしています。
Net Use
ネットワークドライブをUNCパスにマップし、マップされたドライブを参照します。
これはWin8x64で私のために働きました:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor]
"DisableUNCCheck"=dword:00000001
HKCUでもこれを実行できるはずです。ログオフしてから再度ログオンするようにしてください。
cmd
が対応できるようにドライブを明示的にマッピングするだけでなく、他のユーティリティでも必要になる場合があるため、PowerShellなどの代替コマンドShellを試すこともできます。
@pkに従って、pushd&popdを使用します。ここに例を示します。
pushdを使用して一時的な仮想ドライブを作成し、完了したらpopdを実行して一時的な仮想ドライブを削除します
:selectFolder
REM Confirm which Folder structure
set /p location="Delete files for which QA environment: (P)retoria, (C)ape, (L)uanda or (Q)uit? (C/L/P/Q)"
REM I option allows for upper and lower case
if /I "%location%"=="C" set folder="\\Tfwcqa\tfwcqa\EORDERS"
if /I "%location%"=="L" set folder="\\Tfluaqa\tfluaqa\EORDERS"
if /I "%location%"=="P" set folder="\\Tfptaqa\tfptaqa\EORDERS"
if /I "%location%"=="Q" goto endBatch
REM you can not cd to a network drive so we use pushd to create a temporary virtual drive
REM cd /d %folder%
pushd %folder%
DIR /S
REM popd deletes the temporary virtual drive
popd
UNCに余分なバックスラッシュがあります。 "someServer"の前の二重円記号IS適切です。 "someStuff"の前の二重円記号は単一の円記号でなければなりませんか?
だから、試してみてください
\\ someServer\someStuff\"
ない
\\ someServer \\ someStuff\"
junctionコマンド はここでは機能しませんか?