为了账号安全,请及时绑定邮箱和手机立即绑定

如何判断文件夹是否与 GoLang 或 CMD 共享?

如何判断文件夹是否与 GoLang 或 CMD 共享?

Go
慕桂英4014372 2021-11-08 19:20:29
有没有办法判断文件夹是否共享例如我有文件夹 D:/data1 我想知道它是否共享。这可能与 golang 或 CMD 命令有关吗?有没有关于如何做到这一点的例子?我的目标是能够传入根文件夹 D:/data2 并判断是否是共享文件夹。我想做什么的例子。if shared("D:/data2") { //handle if it is shared} else { //handle not shared folder}我只是无法找到检测文件夹是否共享的方法。感谢您的帮助!
查看完整描述

2 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

免责声明:我远非 Windows cli 专家。

您在 os/exec.Cmd 方面走在正确的道路上,可以在您的目标系统上执行操作系统特定的命令。

您应该能够使用该net share 命令来显示所有当前的本地共享。不幸的是,虽然您也可以使用该命令检查共享名,但似乎没有任何反向查找,因此您可能必须编写一些代码来net share查看结果并查找相关路径。

输出的格式足够好,因此编写一个函数net share来创建所有 Windows 共享的映射以便于查找应该不难。


查看完整回答
反对 回复 2021-11-08
?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

这个问题的C#解决方案是使用 WMI。由于这是非常特定于 Windows 的,我认为 Go 标准库中的任何内容都不会在这里帮助您。

我们可以在这个答案中看到,确实存在用于使用 WMI 的第三方包,以及来自 Stack Exchange 的另一个包。您可以尝试结合 C# 解决方案和这些 WMI 包可用的 API。


查看完整回答
反对 回复 2021-11-08
  • 2 回答
  • 0 关注
  • 193 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信