diff --git a/modules/storage/obs.go b/modules/storage/obs.go index 1e347d145..fdfa3d5bb 100755 --- a/modules/storage/obs.go +++ b/modules/storage/obs.go @@ -362,28 +362,45 @@ func GetOneLevelAllObjectUnderDir(bucket string, prefixRootPath string, relative if val.Key == input.Prefix { continue } - if strings.Contains(val.Key[prefixLen:len(val.Key)-1], "/") { - fileName = val.Key[prefixLen : len(val.Key)-1] - files := strings.Split(fileName, "/") - fileName = files[0] + fileName = val.Key[prefixLen : len(val.Key)-1] + log.Info("fileName =" + fileName) + files := strings.Split(fileName, "/") + if fileMap[files[0]] { + continue + } else { + fileMap[files[0]] = true + } + ParenDir := relativePath + fileName = files[0] + if len(files) > 1 { isDir = true - if fileMap[files[0]] { - continue - } else { - fileMap[files[0]] = true - } + ParenDir += fileName } else { - if strings.HasSuffix(val.Key, "/") { - isDir = true - fileName = val.Key[prefixLen : len(val.Key)-1] - relativePath += val.Key[prefixLen:] - } else { - isDir = false - fileName = val.Key[prefixLen:] - } - fileMap[fileName] = true + isDir = false } + // if strings.Contains(val.Key[prefixLen:len(val.Key)-1], "/") { + + // files := strings.Split(fileName, "/") + // fileName = files[0] + // isDir = true + // if fileMap[files[0]] { + // continue + // } else { + // fileMap[files[0]] = true + // } + // } else { + // if strings.HasSuffix(val.Key, "/") { + // isDir = true + // fileName = val.Key[prefixLen : len(val.Key)-1] + // relativePath += val.Key[prefixLen:] + // } else { + // isDir = false + // fileName = val.Key[prefixLen:] + // } + // fileMap[fileName] = true + // } + fileInfo := FileInfo{ ModTime: val.LastModified.Local().Format("2006-01-02 15:04:05"), FileName: fileName,