var FileHelp = &fileHelp{}

type fileHelp struct {
}

// GetDirAllFilePath
// 获取目录下所有文件的相对路径
func (fileHelp *fileHelp) GetDirAllFilePath(dirPath string) []string {
	var filePaths []string
	// dfs 搜索
	// 参数 dir 是文件目录
	// 参数 pathPrefix 指递归的轨迹,表示目录的深度,用于拼接文件相对路径
	var dfs func(dir, pathPrefix string)
	dfs = func(dir, pathPrefix string) {
		list, _ := ioutil.ReadDir(dir)
		for _, item := range list {
			// 如果不是目录,保存路径
			if !item.IsDir() {
				filePaths = append(filePaths, pathPrefix+item.Name())
			} else {
				// 如果是目录,递归找
				nextDir := fmt.Sprintf("%s/%s", dir, item.Name())
				nextParent := fmt.Sprintf("%s%s/", pathPrefix, item.Name())
				dfs(nextDir, nextParent)
			}
		}
	}
	// 深度搜索目录
	dfs(dirPath, "")
	return filePaths
}

输出示例