package test import ( "fmt" "github.com/aliyun/aliyun-oss-go-sdk/oss" "strings" "testing" ) //// 删除除了 callback 文件之外的所有文件 //func TestDeleteExceptCallback(t *testing.T) { // // Define OSS configuration // endpoint := "http://pji-bucket1.oss.icvdc.com" // accessKeyID := "n8glvFGS25MrLY7j" // accessKeySecret := "xZ2Fozoarpfw0z28FUhtg8cu0yDc5d" // bucketName := "pji-bucket1" // // // Create an OSS client // client, err := oss.New(endpoint, accessKeyID, accessKeySecret, oss.UseCname(true)) // if err != nil { // fmt.Printf("Failed to create OSS client: %v\n", err) // return // } // // // Get the bucket // bucket, err := client.Bucket(bucketName) // if err != nil { // fmt.Printf("Failed to get bucket: %v\n", err) // return // } // // // Define an array of directories (prefixes) to scan // //directories := []string{ // // "pjibot_delivery/pjibot-P1YVPS1M22CM00020/data_parse/", // // "pjibot_delivery/pjibot-P1YYPS1M227M00107/data_parse/", // //} // directories := []string{ // "pjibot_patrol/pjibot-P1YVXJ1M231M00022/data_parse", // "pjibot_patrol/pjibot-P1YVXJ1M231M00023/data_parse", // } // // for _, dir := range directories { // // List objects in the directory // marker := "" // for { // lsRes, err := bucket.ListObjects(oss.Prefix(dir), oss.Marker(marker)) // if err != nil { // fmt.Printf("Failed to list objects in directory %s: %v\n", dir, err) // break // } // // for _, object := range lsRes.Objects { // objectKey := object.Key // // // Process files not containing "callback" // if !strings.Contains(objectKey, "callback") { // err := bucket.DeleteObject(objectKey) // if err != nil { // fmt.Printf("Failed to delete object %s: %v\n", objectKey, err) // } else { // fmt.Printf("Deleted object: %s\n", objectKey) // } // continue // } // // // Rename files containing "callback_done" to "callback" // if strings.Contains(objectKey, "callback_done") { // newKey := strings.Replace(objectKey, "callback_done", "callback", 1) // err, _ = bucket.CopyObject(objectKey, newKey) // if err != nil { // fmt.Printf("Failed to copy object %s to %s: %v\n", objectKey, newKey, err) // err = bucket.DeleteObject(objectKey) // } else { // err = bucket.DeleteObject(objectKey) // if err != nil { // fmt.Printf("Failed to delete original object %s after renaming: %v\n", objectKey, err) // } else { // fmt.Printf("Renamed object: %s to %s\n", objectKey, newKey) // } // } // } // } // // // Exit the loop if all objects are processed // if !lsRes.IsTruncated { // break // } // marker = lsRes.NextMarker // } // } //} // 删除指定csv文件,为了重新升成 report.pdf func TestDeleteAllTrajectoryPjiCsv(t *testing.T) { // Define OSS configuration endpoint := "http://pji-bucket1.oss.icvdc.com" accessKeyID := "n8glvFGS25MrLY7j" accessKeySecret := "xZ2Fozoarpfw0z28FUhtg8cu0yDc5d" bucketName := "pji-bucket1" // Create an OSS client client, err := oss.New(endpoint, accessKeyID, accessKeySecret, oss.UseCname(true)) if err != nil { fmt.Printf("Failed to create OSS client: %v\n", err) return } // Get the bucket bucket, err := client.Bucket(bucketName) if err != nil { fmt.Printf("Failed to get bucket: %v\n", err) return } // Define directories to scan directories := []string{ "pjibot_delivery/pjibot-P1YYPS1M227M00107/data_parse", "pjibot_delivery/pjibot-P1YYPS1M227M00107/data_parse", } for _, dir := range directories { // List objects in the given prefix hasNext := true marker := "" for hasNext { lsRes, err := bucket.ListObjects(oss.Prefix(dir), oss.Marker(marker)) if err != nil { fmt.Printf("Failed to list objects in directory %s: %v\n", dir, err) break } for _, object := range lsRes.Objects { if strings.Contains(object.Key, "trajectory_pji.csv") { if err := bucket.DeleteObject(object.Key); err != nil { fmt.Printf("Failed to delete %s: %v\n", object.Key, err) } else { fmt.Printf("Deleted %s\n", object.Key) } } } hasNext = lsRes.IsTruncated marker = lsRes.NextMarker } } } // 删除 func TestDeletePcd(t *testing.T) { // Define OSS configuration endpoint := "http://pji-bucket1.oss.icvdc.com" accessKeyID := "n8glvFGS25MrLY7j" accessKeySecret := "xZ2Fozoarpfw0z28FUhtg8cu0yDc5d" bucketName := "pji-bucket1" // Create an OSS client client, err := oss.New(endpoint, accessKeyID, accessKeySecret, oss.UseCname(true)) if err != nil { fmt.Printf("Failed to create OSS client: %v\n", err) return } // Get the bucket bucket, err := client.Bucket(bucketName) if err != nil { fmt.Printf("Failed to get bucket: %v\n", err) return } // Define directories to scan directories := []string{ "pjibot_delivery/pjibot-P1YYPS1M227M00107/data_parse", "pjibot_delivery/pjibot-P1YYPS1M227M00107/data_parse", } for _, dir := range directories { // List objects in the given prefix hasNext := true marker := "" for hasNext { lsRes, err := bucket.ListObjects(oss.Prefix(dir), oss.Marker(marker)) if err != nil { fmt.Printf("Failed to list objects in directory %s: %v\n", dir, err) break } for _, object := range lsRes.Objects { if strings.Contains(object.Key, "pcd_overlook.mp4") { if err := bucket.DeleteObject(object.Key); err != nil { fmt.Printf("Failed to delete %s: %v\n", object.Key, err) } else { fmt.Printf("Deleted %s\n", object.Key) } } } hasNext = lsRes.IsTruncated marker = lsRes.NextMarker } } }