0

共有相手からファイルを削除する方法の提案はありますか?私は実際にアクセスを取り消さずに、これを行う必要があります。連絡先グループを介して人が追加されるため、1人だけを削除するだけでは機能しません。注意すべきGoogle Apps Script/Drive API(Javascript)共有者から削除する

もの:

私はこれを使用すると、ファイルを見つけることができます知っている:

var files = DriveApp.searchFiles('sharedWithMe'); 
//then I set file = what I'm looking for. 

をしかし、これは私と一緒に共有からファイルを削除しません。

DriveApp.removeFile(file); 

私は」また、役に立たなかったことを除いて、メタデータにパッチを当ててブルートフォースを試みました。 さらに、私と共有することがフォルダであると仮定するのは間違いです。親フォルダを表示すると、ファイルは何も返しません。

答えて

0

DriveAppのみファイルを完全に削除できません。ドライブAPIを使用する必要があります。 "removeFile()"は、親フォルダの情報を変更するために使用されます。ファイルを削除することはできません。私はファイルを削除するための2つのサンプルを用意しました。ファイルの所有者であれば、ファイルを削除できます。ゴミ箱と空のゴミ箱に

移動ファイル:

Drive.Files.remove("fileID"); 

これは、上記のスクリプトは、他のユーザーが使用している場合でも、ファイルを削除することができていることが確認された:

var file = DriveApp.getFilesByName("filename").next(); 
file.setTrashed(true) 
Drive.Files.emptyTrash(); 

直接ファイルを削除します。

上記のスクリプトを使用する場合は、Drive API at Advanced Google ServicesとドライブAPIをhttps://console.developers.google.com/ Developers Console Projectで有効にする必要があります。親フォルダのない

ファイル:あなたが使用していた場合

「REMOVEFILE()」、親フォルダのないファイルがドライブに存在することができます。あなたはそれらをスクリプトに従って確認することができます。これにより、親フォルダのないファイルのファイル名とファイルIDを取得できます。

var result = []; 
var files = DriveApp.getFiles(); 
while (files.hasNext()) { 
    file = files.next(); 
    if (!file.getParents().hasNext()) { 
    result.push([file, file.getId()]); 
    } 
} 
Logger.log(result); 
+0

私はファイルの所有者ではないため、Drive.Files.remove()を使用してファイルを削除することはできません。私は、ファイルを右クリックして削除を押す機能を自動化するのと同じように、Googleドライブの私と共有セクションからファイルを削除しようとしています。 APISを有効にしました。 –

+0

ファイルのオーナーでない場合は、完全に削除することはできませんが、これを使用してドライブからファイルを非表示にすることができます。 '' var file = DriveApp.getFilesByName( "filename")。next(); var folder = file.getParents()。next(); folder.removeFile(file); ''この場合、私の答えに「親フォルダなしのファイル」を使用して確認できます。 – Tanaike

+0

エラー:次のオブジェクトを取得できません:イテレータが最後に達しました。私は私と共有しているのは実際には親ではないと思っています。 –

関連する問題