【问题标题】:How to create the temporary directory in the localhost system using golang如何使用golang在localhost系统中创建临时目录
【发布时间】:2018-12-04 04:37:14
【问题描述】:

这里我正在尝试使用下面提到的代码在我的本地系统中创建一个临时目录

代码

path := "/home/iron/go/"
fmt.Println(os.Stat(path))
// this statement prints the data showing numbers
if _, err := os.Stat(path); os.IsNotExist(err) {
    os.MkdirAll(path, 0755)
}

我也搜索了它,但我想从上面的代码中执行此操作或在代码中添加一些行。

制作临时目录的链接:-link 1,link 2

【问题讨论】:

  • 您是要创建一个具有特定路径“/home/iron/go/”的目录,还是要创建一个具有任意路径的临时目录?如果是前者,请在问题中调用 os.MkdirAll 。如果是后者,请致电ioutil.TempDir
  • 是的,我用过它,但它会使用这个号码创建文件夹361911691,但我不需要这个号码。有没有办法解决这个问题? @thunderCat 尝试使用特定路径创建目录
  • 到底是什么问题?你有错误吗?如果有,是什么?
  • 问题是当创建临时文件夹时,它会以给定的名称加入这个号码。有什么方法可以将这些从文件夹名称中删除?
  • 问题中的代码不符合您的描述。请发布您的实际代码。 ioutil.TempDir 的目标是创建一个新目录。该函数将文本附加到前缀以确保目录是唯一的。如果你想在os.TempDir中创建一个已知名称的目录,那么os.Mkdirall(filelpath.Join(os.TempDir(), "yourpath"))

标签: go path directory


【解决方案1】:

你可以直接获取os temp目录,在该目录下手动创建一个不带random后缀的文件夹(random是为了解决冲突):

goPath := filepath.Join(os.TempDir(), "/home/iron/go/")
> /var/folders/m2/4clpt6wj62j6dt9kwpr4b5fh0000gn/T/home/iron/go

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 1970-01-01
    • 1970-01-01
    • 2010-09-21
    • 1970-01-01
    相关资源
    最近更新 更多