go - 如何覆盖 Go 中的符号链接(symbolic link)?

标签 go symlink

我想用 Go 覆盖一个符号链接(symbolic link),但我找不到怎么做。

如果我尝试创建符号链接(symbolic link)并且它已经存在,则会返回错误。

我的代码:

err := os.Symlink(filePath, symlinkPath)
if err != nil {
    fmt.Println(err)
}

我想必须删除符号链接(symbolic link)然后重新创建。那正确吗?如果是这样,我怎样才能取消链接符号链接(symbolic link)?

最佳答案

只需检查符号链接(symbolic link)是否存在并在创建新符号链接(symbolic link)之前将其删除

if _, err := os.Lstat(symlinkPath); err == nil {
  os.Remove(symlinkPath)
}

关于go - 如何覆盖 Go 中的符号链接(symbolic link)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37345844/

相关文章:

go - leveldb-go 示例,文档

docker -/bin/sh : 1:/go/src/test. sh: 未找到

c++ - Boost::filesystem::is_empty() 为符号链接(symbolic link)返回 false

iphone - 3.0 中的动态(Default.png)启动画面 [iPhone SDK]

typescript - 一起使用 pnpm 和 typescript 的类型检查问题

csv - 处理 golang 中的特定错误

regex - 当我分割字符串时,如何在输出中包含运算符?

postgresql - 使用 go 的 sqlx 在 postgres 表中插入记录并自动生成 ID

java - 如何在 Jython 中创建符号链接(symbolic link)

symlink - MAC OSX El Capitan : Airport Sym link not permitted