액세스 수준별로 Google 드라이브에 항목을 어떻게 나열합니까?


11

실수로 Google 드라이브에서 민감한 정보를 공유하는 것을 발견했습니다. 이것은 여러 번 발생했습니다. 그래서 내가 무엇을 공유하고 누구와 함께 있는지 확인하고 싶습니다. 드라이브에 내 항목 (파일 및 폴더) 목록을 액세스 수준별로 정렬하여보고 싶습니다. 먼저 공개, 링크가있는 사용자, 특정 사용자와 공유하고 마지막으로 비공개입니다. 가능합니까?

아니면이 목표를 달성하는 다른 방법이 있습니까?

이 질문은 Dropbox에도 적용 되며 제안 된대로 별도의 질문 을 게시했습니다 .


끝난. 다른 질문에 대한 링크로 질문을 업데이트했으며 그 반대도 마찬가지입니다.
Vaddadi Kartick 1

답변:


1

이 스크립트는 당신이 그 목표에 아주 가까이 갈 것입니다. 다음은 출력 예입니다 .

현재 특정 폴더와 하위 폴더에서 실행되도록 설정되어 있지만 시간이 초과 될 수있는 파일 수에 따라 전체 드라이브에서 실행되도록 수정할 수 있습니다.

  1. 새 스프레드 시트를 엽니 다.
  2. 에 도착 Tools>Script Editor
  3. 아래 스크립트를 복사하여 창에 붙여 넣어 모든 것을 바꿉니다
  4. 폴더 ID 대신 THE_FOLDER_ID
  5. 저장해.
  6. 재생 (실행) 버튼을 눌러 스크립트를 실행하십시오.
  7. 스프레드 시트에 작성한 내용을 확인하고 원하는대로 정렬하십시오.

    function listFolders(folder) {
    var sheet = SpreadsheetApp.getActiveSheet();
    sheet.appendRow(["Name", "Sharing Access", "Sharing Permission", "Get Editors", "Get Viewers", "Date", "Size", "URL", "Download", "Description", "Type"]); //writes the headers
    var folder = DriveApp.getFolderById("THE_FOLDER_ID");//that long chunk of random numbers/letters in the URL when you navigate to the folder
    
    var files = folder.getFiles();//initial loop on loose files w/in the folder
    
     var cnt = 0;
     var file;
    
     while (files.hasNext()) {
         var file = files.next();
         var listEditors = file.getEditors(); //gets the editor email(s), doesn't show your own as it's assumed
         var editors = [];
         for (var cnt = 0; cnt < listEditors.length; cnt++) {
             editors.push(listEditors[cnt].getEmail());
             Logger.log(editors);
         };
         var listViewers = file.getViewers(); //gets the viewer email(s)
         var viewers = [];
         for (var cnt = 0; cnt < listViewers.length; cnt++) {
             viewers.push(listViewers[cnt].getEmail());
             Logger.log(viewers);
         }
         cnt++;  //data chunk pushes all the file info to the ss
    
         data = [
             file.getName(),
             file.getSharingAccess(),
             file.getSharingPermission(),
             editors.toString(),
             viewers.toString(),
             file.getDateCreated(),
             file.getSize(),
             file.getUrl(),
             "https://docs.google.com/uc?export=download&confirm=no_antivirus&id=" + file.getId(),
             file.getDescription(),
             file.getMimeType(),
         ];
    
         sheet.appendRow(data);
    
     };
    
    
     var subfolders = folder.getFolders(); //same thing as above but for all the subfolders in the folder
    
     while (subfolders.hasNext()) {
         //Logger.log(folder);
         var name = subfolders.next();
    
         var files = name.getFiles();
    
         var cnt = 0;
         var file;
    
         while (files.hasNext()) {
             var file = files.next();
             var listEditors = file.getEditors();
             var editors = [];
             for (var cnt = 0; cnt < listEditors.length; cnt++) {
                 editors.push(listEditors[cnt].getEmail());
                 Logger.log(editors);
             };
             var listViewers = file.getViewers();
             var viewers = [];
             for (var cnt = 0; cnt < listViewers.length; cnt++) {
                 viewers.push(listViewers[cnt].getEmail());
                 Logger.log(viewers);
             }
             cnt++;
    
             data = [
                 file.getName(),
                 file.getSharingAccess(),
                 file.getSharingPermission(),
                 editors.toString(),
                 viewers.toString(),
                 file.getDateCreated(),
                 file.getSize(),
                 file.getUrl(),
                 "https://docs.google.com/uc?export=download&confirm=no_antivirus&id=" + file.getId(),
                 file.getDescription(),
                 file.getMimeType(),
             ];
    
             sheet.appendRow(data);
    
             };
     }
    

    }

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.