《Hands-On System Programming with Go》之目录操作
2024-08-30 06:04:57
开一个新书《Hands-On System Programming with Go》,系统的了解一下,
这方面的东东,以前用C语言实现过,
现在用GO,重新来!!
package main import ( "fmt" "os" "path/filepath" ) func main() { wd, err := os.Getwd() if err != nil { fmt.Println(err) return } fmt.Println("starting dir:", wd) if err := os.Chdir("d:\\"); err != nil { fmt.Println(err) return } if wd, err = os.Getwd(); err != nil { fmt.Println(err) return } fmt.Println("final dir:", wd) if len(os.Args) != 2 { fmt.Println("Please specify a path.") return } root, err := filepath.Abs(os.Args[1]) if err != nil { fmt.Println(err) return } fmt.Println("listing files in ", root) var c struct { files int dirs int } filepath.Walk(root, func(path string, info os.FileInfo, err error) error { if info.IsDir() { c.dirs++ } else { c.files++ } fmt.Println("-", path) return nil }) fmt.Printf("Total: %d files in %d directiories.", c.files, c.dirs) }
最新文章
- sql 笔记(mysql)
- jsoup
- INBOUND_CONNECT_TIMEOUT与SQLNET.INBOUND_CONNECT_TIMEOUT小结
- map find 是线程安全的吗
- std::map 自定义排序
- JavaScript备忘录-闭包
- ios App 打包
- 启用EXCHANGE反垃圾邮件功能和重建EXCHANGE邮件系统帐号
- HTML5 FileReader读取Blob对象API详解
- spring源码
- [傻瓜版] Redis在Windows下的开发环境配置步骤
- 【IDEA填坑】springboot整合ssm框架
- 201771010141 周强《面向对象设计 java》第十五周实验总结
- 闲话Pipeline In Maya
- UVC 驱动调用过程与驱动框架的简单分析
- 条件分支SQL语句<;一>; Case When
- SpringBoot实战之SpringBoot自动配置原理
- JSON.parse() 方法解析一个JSON字符串
- Docker 监控的一点想法
- Linux useradd 与 adduser的区别, /sbin/nologin 与 /bin/bash