基本目录操作

涉及:创建目录、重命名目录、删除目录

package main

import (
"fmt"
"os"
"time"
"path/filepath"
) func CreateDir(Path string) string {
// 创建以当天日期命名的目录
dirName := time.Now().Format("20060102")
dirPath := filepath.Join(Path, dirName)
if _,err := os.Stat(dirPath); os.IsNotExist(err) {
// 创建目录
os.MkdirAll(dirPath, os.ModePerm)
// 修改权限
os.Chmod(dirPath, 0777)
}
return dirPath
} func main() {
path,err := os.Getwd()
if err != nil {
fmt.Println(err)
} path = CreateDir(path)
fmt.Println(path) // 创建子目录。20211219/新文件夹/dic
os.MkdirAll(filepath.Join(path, "新文件夹/dic"), os.ModePerm)
// 目录重命名。20211219/newfolder/dic
os.Rename(filepath.Join(path, "新文件夹"), filepath.Join(path, "newfolder"))
//删除目录。如果有子目录则不删除
os.Remove(filepath.Join(path, "newfolder/dic")) }

遍历目录

package main

import (
"fmt"
"os"
"path/filepath"
) func visit(path string, f os.FileInfo, err error) error {
fmt.Printf("%s \n", path)
return nil
} func main() {
// 遍历当前目录
if root, err := os.Getwd(); err == nil {
// filepath.Walk()用于遍历指定目录,该方法接收两个参数,一个是根目录root,另一个是递归的回调函数walkFunc
// 目录文件较多时,Walk()效率低下
err := filepath.Walk(root, visit)
if err != nil {
fmt.Println(err)
}
} }

参考文章

  • 汪明 - 《Go并发编程实战》清华大学出版社

【go笔记】目录操作的更多相关文章

  1. perl学习笔记——目录操作

    在目录书中移动 chdir 操作副改变当前的工作目录.它和shell中cd命令类似: chdir ‘/etc’ or die “cannot chdir to /etc:$1”; 注意:工作目录不能更 ...

  2. 《UNIX-Shell编程24学时教程》读书笔记Chap3,4 文件,目录操作

    Chap3 文件操作   P28 在这章中,要着重记住一些常用的选项,要有使用正则表达式的思维,能更快达到目的.----@im天行 3.1 列文件名 .profile  sh的初始化脚本: .kshr ...

  3. Redis学习笔记~目录

    回到占占推荐博客索引 百度百科 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合). ...

  4. liunx学习(一):linux下目录操作大全

    Linux C函数之文件及目录函数(全):http://blog.sina.com.cn/s/blog_695e489c01013ldd.html linux目录操作发:http://www.cnbl ...

  5. python学习笔记目录

    人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...

  6. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  7. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  8. 【C#公共帮助类】FTPClientHelper帮助类,实现文件上传,目录操作,下载等动作

    关于本文档的说明 本文档使用Socket通信方式来实现ftp文件的上传下载等命令的执行 欢迎传播分享,必须保持原作者的信息,但禁止将该文档直接用于商业盈利. 本人自从几年前走上编程之路,一直致力于收集 ...

  9. 转《WF编程》笔记目录

    <WF编程>笔记目录 2008-03-18 09:33 by Windie Chai, 26803 阅读, 49 评论, 收藏, 编辑 WF笔记开始 <WF编程>系列之0 - ...

  10. Java基础知识系列——目录操作

    Java对目录操作的许多方法与上一篇文件操作的方法很多是一样的. java.io.File file = new File( "D:\1\2\3\4"); 1.递归创建目录 fil ...

随机推荐

  1. Windows server 2012 r2 激活方法

    slmgr /ipk W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9 slmgr /skms kms.03k.org slmgr /ato

  2. prefetch_related() 一对多、多对多查询优化,反向查询

    prefetch_related() 一对多.多对多查询优化,反向查询 Student.objects.filter(age__lt=30).prefetch_related('course') # ...

  3. elementui中的el-table,(prop对应多个属性)中拼接两个列表字段并展示

    elementui中的el-table,(prop对应多个属性)中拼接两个列表字段并展示 <el-table-column prop="pa_dt_name,pa_duty_name& ...

  4. 【C#代码整洁之道】读后习题

    1)劣质的代码会带来什么后果? GPT回答: 可维护性降低:代码过于复杂.难以理解.难以修改,导致维护成本增加,代码质量更加恶化. 可靠性降低:错误容易发生,很难找到并修复,因为代码模糊.逻辑混乱,并 ...

  5. 深入理解 python 虚拟机:魔术方法之数学计算

    深入理解 python 虚拟机:魔术方法之数学计算 在本篇文章当中主要给大家介绍在 python 当中一些常见的魔术方法,本篇文章主要是关于与数学计算相关的一些魔术方法,在很多科学计算的包当中都使用到 ...

  6. golang 包管理

  7. harbor改造为https---血泪史

  8. es mysql 适用场景对比

    es mysql 适用场景对比 问题一 全文检索毫无疑问直接上es,那么除了这种场景,什么时候该选es?为啥mysql不行? 对枚举字段的搜索 mysql创建索引的原则是对于那些区别度高字段建立索引, ...

  9. Dapr在Java中的实践 之 环境准备

    Dapr简介 Dapr (Distributed Application Runtime)是一个可移植的.事件驱动的运行时,它使任何开发人员都可以轻松地构建运行在云和边缘上的弹性.无状态和有状态的应用 ...

  10. 02.详解盒子模型&选择器初识

    1.Div盒子 用div做圆 能否优化,去掉div之间的距离?margin属性 用表格做圆 2.CSS样式 总结:需要注意的是行级标签设置宽高不会生效 小练习:使用span标签 3.CSS选择器演示及 ...