2011-05-13 11:15:40 +0000 2011-05-13 11:15:40 +0000
163
163

Navegar um caminho UNC usando o Windows CMD sem mapeá-lo para uma unidade de rede

C:\> cd \somewhere
'\somewhere'
CMD does not support UNC paths as current directories.

O que eu costumo fazer para contornar isto é mapear esse directório para uma unidade de rede e depois poderia aceder facilmente a partir do prompt de comando.

Mas existe uma forma mais fácil de contornar isto?

Respostas (7)

224
224
224
2012-03-12 20:00:01 +0000

Se utilizar pushd e popd em vez de cd não obterá esse erro UNC.

pushd <UNC path> irá criar uma drive virtual temporária e entrar nela. popd irá apagar a drive temporária e levá-lo de volta ao caminho em que estava quando introduziu pushd.

Exemplo:

C:\a\local\path> pushd \network_host\a\network\path

U:\a\network\path> REM a temporary U: virtual drive has been created

U:\a\network\path> popd

C:\a\local\path> REM the U: drive has been deleted

C:\a\local\path>
16
16
16
2015-07-09 17:53:13 +0000

Eu uso Git Bash para fazer isto, uma vez que já o tenho instalado.

Como bónus adicional: Também tem melhores cores, vamos usar ls, rm, etc., e usa a barra correcta para os caminhos. :P

12
12
12
2011-05-13 16:07:34 +0000

A “ContextConsole Shell Extension” do Kliu (aka Open Command Prompt) diz que “pode mesmo abrir directórios a partir de caminhos de rede (caminhos UNC)” (a partir de uma janela do Explorer). http://code.kliu.org/cmdopen/

8
8
8
2013-01-28 07:51:00 +0000

Também atingi o problema da UNC com o C:\> cd \somewhere num programa em C. Encontrei esta página e aprendi sobre o comando net: net use x: \computer name\share name e usei-o com sucesso! Obrigado a todos os que publicam as suas experiências para que os outros aprendam :-)

4
4
4
2011-05-13 12:10:04 +0000

Se você está usando XP você pode dar uma olhada neste site http://support.microsoft.com/kb/156276

Há um valor de registro que você precisa adicionar, sair, entrar novamente … e agora o seu cmd.exe suporta UNC-Paths. Parece-me que ainda não pode cd para o caminho, mas pode usá-lo noutros comandos como dir, copy …

Uma alternativa pode ser usar o comando pushd, que lhe permitirá mudar para o share (acho que atribuindo-lhe uma letra de drive temporária) http://support.microsoft.com/kb/317379

-1
-1
-1
2020-01-16 21:55:55 +0000

imho, a solução mais elegante é usar o mklink /D para criar um link simbólico para o caminho da rede. se você usar em um script não terá que descobrir qual letra de drive foi atribuída.

-3
-3
-3
2012-06-21 10:31:30 +0000

Pode utilizar a aplicação HttpFileServer, ela’ sobre windows, muito leve e muito fácil de configurar , permite partilhar uma pasta de rede UNC ( \server\share ) com protocolo HTTP e o link HTTP pode ser utilizado em qualquer página HTML http://www.rejetto.com/hfs/

é espantoso