Recherche multiple sur Drive

Bonjour à tous

J'ai une liste de fichiers contenu dans un même dossier de mon Drive que je voudrais sélectionner en une seule opération pour pouvoir les supprimer. Pour l'instant je n'ai comme solution que la fonction recherche ce qui m'impose de rentrer les noms un à un. Je voudrais copier toute ma liste figurant dans une Google Sheet (156 cellules comportant le nom de chaque fichier) et lancer la recherche sur le répertoire de Drive pour tout supprimer d'un coup.

merci de votre aide

Bonjour,

Ce script fait le taf : (tu dois juste changer l'ID du Drive et la plage où sont les noms de fichiers)

function suprFichiers() {
  const driveID = '129U1z8WatRjgfhfgghfg5876Pb8mTNv'; // à changer
  const drive = DriveApp.getFolderById(driveID);
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const fileNames = sheet.getRange('A:A').getValues().flat().filter(name => name); // plage A:A à modifier suivant ta colonne
  fileNames.forEach(fileName => {
    const files = drive.getFilesByName(fileName);
    while (files.hasNext()) {
      var file = files.next();
      file.setTrashed(true); 
    }
  });
}

Merci beaucoup ça marche impeccablement !

Bonsoir

Le script marche bien avec mon fichier test mais pas avec mon fichier d'application. Voici le message d'erreur:

image

Je ne sais pas si c'est l'explication mais le nom de mon driveID paraît très long par rapport au tien et à celui de mon fichier test.

Bonjour,

Si tu essayes de supprimer un fichier inexistant dans le drive ca peut bloquer, afin d'éviter cela ajoute une vérification :

function suprFichiers() {
  const driveID = '129U1z8WatRjgfhfgghfg5876Pb8mTNv';
  const drive = DriveApp.getFolderById(driveID);
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const fileNames = sheet.getRange('A:A').getValues().flat().filter(name => name);
  fileNames.forEach(fileName => {
    try {
      const files = drive.getFilesByName(fileName);
      let fileFound = false;
      while (files.hasNext()) {
        fileFound = true;
        var file = files.next();
        file.setTrashed(true);
      }
      if (!fileFound) {
        console.log(`Fichier : "${fileName}" introuvable dans le drive.`);
      }
    } catch (e) {
      console.log(`Erreur lors de la recherche du fichier "${fileName}": ${e.message}`);
    }
  });
}

Bonjour

J'ai essayé mais j'ai ce message d'erreur:

image

il manque des parenthèses, crochets, supprime tout ce qui a, colle mon script et modifie juste les points qui doivent l’être :

function suprFichiers() {
  const driveID = '129U1z8WatRjgfhfgghfgsdfdssfd5876Pb8mTNv'; // A CHANGER
  const drive = DriveApp.getFolderById(driveID);
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  const fileNames = sheet.getRange('A:A').getValues().flat().filter(name => name); // A:A  A CHANGER
  fileNames.forEach(fileName => {
    try {
      const files = drive.getFilesByName(fileName);
      let fileFound = false;
      while (files.hasNext()) {
        fileFound = true;
        var file = files.next();
        file.setTrashed(true);
      }
      if (!fileFound) {
        console.log(`Fichier : "${fileName}" introuvable dans le drive.`);
      }
    } catch (e) {
      console.log(`Erreur lors de la recherche du fichier "${fileName}": ${e.message}`);
    }
  });
}

c'est fait

voilà le retour:

image

L'erreur t'indique avoir lieu ligne 3 :

image

Et que ça un lien avec le drive, je pense que l'ID est incorrecte, voici comment avoir l'ID d'un dossier du drive :

image

Bonjour

Génial ça a marché.

L'ID du drive paraissait curieusement longue par rapport à la tienne comme je l'avait précédemment signalé. Pour qu'elle ressemble à la tienne, j'ai supprimé tout ce qui suit https://drive.google.com/drive/folders/0ByVORjp2h14GOVF1cl9JYmNsbDQ?resourcekey=0-i7PWnP1JhubMUYuSjw... et ça a marché!!!!

Mes fichiers indésirables ont été placé directement dans la corbeille (Géniaal!!!) et j'ai eu dans la console la liste des fichiers non trouvés.

Merci beaucoup de ton aide (qui va me servir encore dans le futur) et bon week-end

Rechercher des sujets similaires à "recherche multiple drive"