2

I'm trying to discover and walk the shared folders and files of a computer on my network, let's call it ComputerA. If I know ComputerA is sharing a folder called Source, I can use

files, err := ioutil.ReadDir("\\\\ComputerA\\Source")

to get a list of all the files in Source. However, I can't do this to find Source (or any other shared folders)

files, err := ioutil.ReadDir("\\\\ComputerA")

It seems that ioutil can't list the root shared folders using a UNC path like this. I've looked over the stock packages rather quickly and nothing else jumps out at me as a way to do this.

It's not a permissions issue as far as I can tell. I can open up explorer and go straight to \\ComputerA and it'll work just fine.

How else can I discover the shared folders for a specific computer on my network?

Corey Ogburn
  • 24,072
  • 31
  • 113
  • 188

1 Answers1

3

That doesn't seem directly supported by Go libraries like ioutil or net or other packages.

Instead that would depend on the file system used, and would best use a system command (exec.Command().Output() ).
For instance, for Windows, net share (for local shares) or net view (for remote shares).

Community
  • 1
  • 1
VonC
  • 1,262,500
  • 529
  • 4,410
  • 5,250