到目前为止,Go中没有直接的方法可以执行此操作。我建议使用
net use,这当然会限制Windows的功能,但这实际上是您所需要的。
因此,当您在Windows中打开命令提示符时,可以使用以下命令将网络共享映射到Windows驱动器:
net use Q: \SERVERSHARE /user:Alice pa$$word /P
Q:代表您的Windows驱动器,
\SERVERSHARE是网络地址,
/user:Alicepa$$word是您的凭据,并且
/P用于持久性。
在Go中执行此操作类似于:
func mapDrive(letter string, address string, user string, pw string) ([]byte, error) { // return combined output for std and err return exec.Command("net use", letter, address, fmt.Sprintf("/user:%s", user), pw, "/P").CombinedOutput()}func main() { out, err := mapDrive("Q:", `\SERVERSHARE`, "Alice", "pa$$word") if err != nil { log.Fatal(err) } // print whatever comes out log.Println(string(out))}


