Skip to content

按照本地文件,删除远程文件

js

const { S3Client, DeleteObjectCommand } = require("@aws-sdk/client-s3");
const { join } = require("path");
const { readdir, stat } = require("fs-extra");

const client = require('./client')

let a = 0;

const deleteObjects = async (dir) => {
  const dirs = await readdir(dir);

  for (let i = 0, l = dirs.length; i < l; i++) {
    const _dir = join(dir, dirs[i]);

    if ((await stat(_dir)).isFile()) {
      try {
        console.log(_dir.slice(base.length + 1).replace(/\\/g, "/"));
        const input = {
          Bucket: "sharp-unpacked",
          Key: _dir.slice(base.length + 1).replace(/\\/g, "/"),
        };
        const command = new DeleteObjectCommand(input);
        client.send(command).then(() => {
          console.log(a++);
        });
      } catch (error) {
        console.log(error);
      }
    } else {
      deleteObjects(_dir);
    }
  }
};

const base = join(__dirname, "../dist-electron/win-unpacked");
deleteObjects(base);