Windows 如何判断文件夹是否与GoLang或CMD共享?
是否有办法判断文件夹是否共享,例如我有文件夹D:/data1我想知道它是否共享。Windows 如何判断文件夹是否与GoLang或CMD共享?,windows,go,cmd,Windows,Go,Cmd,是否有办法判断文件夹是否共享,例如我有文件夹D:/data1我想知道它是否共享。这是否可能与golang或CMD命令有关?有关于如何做到这一点的示例吗? 我的目标是能够传入根文件夹D:/data2,并判断它是否是共享文件夹 我想做的例子 if shared("D:/data2") { //handle if it is shared } else { //handle not shared folder } 我只是无法找到一种方法来检测文件夹是否共享。 谢谢你的帮助 此问题的解决方案是使用
这是否可能与golang或CMD命令有关?有关于如何做到这一点的示例吗?
我的目标是能够传入根文件夹D:/data2,并判断它是否是共享文件夹
我想做的例子
if shared("D:/data2") {
//handle if it is shared
} else {
//handle not shared folder
}
我只是无法找到一种方法来检测文件夹是否共享。
谢谢你的帮助 此问题的解决方案是使用WMI。由于这是非常特定于Windows的,我不相信Go标准库中的任何东西会在这方面对您有所帮助
我们可以看到,确实存在使用WMI的第三方软件包,以及来自堆栈交换的软件包。您可以尝试将C#解决方案和这些WMI软件包中可用的API结合起来进行开发。免责声明:我远非windows cli专家 就os/exec.Cmd而言,在目标系统上执行特定于os的命令是正确的 您应该能够使用
净共享
显示所有当前本地共享。不幸的是,虽然您也可以使用该命令检查共享名,但似乎没有任何反向查找,因此您可能需要编写一些代码,以穿透net share
的结果并查找相关路径
输出的格式非常好,因此编写一个函数来使用net share
创建所有windows共享的映射以便于查找应该不会太困难