package main
import (
"fmt"
"os"
"path/filepath"
)
func main() {
directory := "./your-directory" // 替换为实际目录路径
err := filepath.Walk(directory, func(filePath string, info os.FileInfo, err error) error {
if err != nil {
return err
}
if!info.IsDir() {
newFileName := "new_" + info.Name()
newFilePath := filepath.Join(filepath.Dir(filePath), newFileName)
err = os.Rename(filePath, newFilePath)
if err != nil {
return err
}
}
return nil
})
if err != nil {
fmt.Println("重命名文件出错:", err)
}
}
os包中涉及的关键函数及作用
- filepath.Walk:
- 作用:遍历指定目录及其子目录下的所有文件和目录。它会对每个文件和目录调用传入的回调函数。
- os.Rename:
- 作用:重命名文件或目录。第一个参数为原路径,第二个参数为新路径。如果新路径已存在且是一个文件,会返回错误。