QUESTION :
Ok, I have seen: Change working directory to network share – however, it does not seem to work for me on Windows 10.
At work, I have a network share, let’s say, at local IP address 20.0.0.1; so, first I go to a Windows Explorer window, type there \20.0.0.1
, I get asked for a login and password; when I enter my credentials, I get a directory listing, no problem. (and I even get \20.0.0.1
as a node under Network
in the tree view pane on the left of the Windows Explorer window.)
So, now I open Powershell as administrator, and try this:
PS C:WINDOWSsystem32> cd \20.0.0.1
cd : Cannot find path '\20.0.0.1' because it does not exist.
At line:1 char:1
+ cd \20.0.0.1
+ ~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (\20.0.0.1:String) [Set-Location], ItemNotFoundException
+ FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
Same for cmd.exe
, ran as Administrator:
C:WINDOWSsystem32>pushd \20.0.0.1
The network name cannot be found.
Net use does not work either:
C:WINDOWSsystem32>net use Y: \20.0.0.1
System error 67 has occurred.
The network name cannot be found.
… and yet, the server is fully pingable:
C:WINDOWSsystem32>ping 20.0.0.1
Pinging 20.0.0.1 with 32 bytes of data:
Reply from 20.0.0.1: bytes=32 time<1ms TTL=64
Reply from 20.0.0.1: bytes=32 time<1ms TTL=64
Ping statistics for 20.0.0.1:
Packets: Sent = 2, Received = 2, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Control-C
^C
How can I cd into this network share from a terminal (either cmd, or Powershell)?
ANSWER :
1: You’ve got the syntax wrong: \servername specifies a server, not a UNC-PATH.
You need to use \servernamesharename as a minimum.
2: You can’t do this with the command-prompt. You must map a network drive to it and use the drive letter in CMD.exe. It will work in PowerShell.
What about a PowerShell Core solution? I was successfull using
cd Microsoft.PowerShell.CoreFileSystem::\servernamesharename