发现给定计算机的共享文件夹?

时间:2015-02-12 20:38:14

标签: go shared-directory

我正在尝试发现并浏览网络上计算机的共享文件夹和文件,我们称之为ComputerA。如果我知道ComputerA正在共享一个名为Source的文件夹,我可以使用

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

获取Source中所有文件的列表。但是,我不能这样做来查找Source(或任何其他共享文件夹)

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

似乎ioutil无法使用像这样的UNC路径列出根共享文件夹。我很快就查看了库存包,没有其他任何东西可以作为一种方法来解决这个问题。

据我所知,这不是权限问题。我可以打开资源管理器并直接进入\\ComputerA,它会正常工作。

我怎样才能发现网络上特定计算机的共享文件夹?

1 个答案:

答案 0 :(得分:3)

Go ioutilnet或其他软件包似乎没有直接支持。

相反,这将取决于所使用的文件系统,并最好使用系统命令(exec.Command().Output()) 例如,对于Windows,net share(对于本地共享)或net view (for remote shares)