Google Apps Script(GAS)에서 GoogleDrive의 지정된 폴더에서 파일 목록 가져오기
7164 단어 GoogleAppsScript
개요
Google Apps Script(이하 GAS)에서 GoogleDrive의 특정 폴더에 대한 파일 목록을 가져옵니다.
폴더 지정에는 フォルダID
와 フォルダ名
로 액세스하는 방법이 있습니다.
폴더 ID로 파일 목록 얻기
폴더 ID란?
폴더 ID는 GoogleDrive에서 해당 폴더를 볼 때 URL 부분에 표시되는 ID입니다.
※ https://drive.google.com/drive/u/0/folders/
이하 부분

코드
DriveApp.getFolderById
에 폴더 ID를 지정하여 폴더를 가져옵니다.
가져온 폴더의 getFiles()
메서드에서 파일 목록을 가져옵니다.
DriveApp.getFolderById(folderID);
파일 정보는 이터레이터로 취득하는 형태가 되므로, hasNext()
로 파일의 존재를 확인하면서 next()
로 파일의 실태를 취득합니다.
파일 이름은 getName()
로 구할 수 있습니다.
파일 ID를 취득하고 싶은 경우는 getId()
메소드를 이용합니다.
function myFunccton() {
let folderID = "XXXXXXXXXX"
let folder = DriveApp.getFolderById(folderID);
let files = folder.getFiles();
while(files.hasNext()) {
file = files.next();
console.log(`[${file.getName()}]${file.getId()}`);
}
}
덧붙여서 문자열 부분을 백쿼트로 둘러싸 두면, ${}
를 이용해, 변수나 함수의 반환값을 문자 출력할 수가 있습니다.
결과
로그에 다음과 유사한 목록이 표시됩니다.
(ID 부분 숨기고 있습니다)

폴더 이름으로 파일 목록 얻기
DriveApp.getFoldersByName
를 사용하여 폴더 이름을 지정하여 폴더를 검색할 수도 있습니다.
GoogleDrive에 있는 모든 동일한 폴더 이름을 가져오는 형태이므로 반환값은 폴더 반복자입니다.
이번에는 지정한 폴더 이름이 GoogleDrive에 하나 밖에 없다고 결정한 전제로 이터레이터의 첫 번째 폴더를 취득하고 있습니다.
DriveApp.getFoldersByName(folderName);
코드
코드는 다음과 같습니다.
결과는 폴더 ID 지정의 경우와 동일하므로 생략합니다.
function myFunction() {
let folderName = "SubFolder"
// イテレータで取れるので1つ目を決め打ちで取得
let folder = DriveApp.getFoldersByName(folderName).next();
let files = folder.getFiles();
while(files.hasNext()) {
file = files.next();
console.log(`[${file.getName()}]${file.getId()}`);
}
}
주의점
GoogleDrive에 액세스하기 때문에 처음 실행할 때 액세스 승인을 받아야합니다.
조금 수수가 많기 때문에, 수속의 스쿠쇼를 붙여 둡니다.
사용 권한 확인

해당 Google 계정 선택

경고 대화상자
세부정보 클릭

자세한 내용이 표시되므로 (安全ではないページ)に移動

액세스 요청 대화 상자
권한을 누르십시오.

이상의 수속을 끝낸 뒤 다시 실행하면, 보통으로 실행할 수 있게 됩니다.
참고 정보
■ Google 공식 DriveApp Api
참조
ぇぺぺrs. 오, ぇ. 코 m / 아 ps-sc 리 pt / 레후 렌세 / d 리 ゔ ぇ / d 리 ゔ ぇ 아 p
■ Google Apps Script로 Google 드라이브를 사용하는 가장 간단한 스크립트
htps : //가 되어-t. 이 m/가 s-오 g-d 리ゔぇ-아 p/
Reference
이 문제에 관하여(Google Apps Script(GAS)에서 GoogleDrive의 지정된 폴더에서 파일 목록 가져오기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/beckyJPN/items/2ff74d5d13322b95a34e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
폴더 ID란?
폴더 ID는 GoogleDrive에서 해당 폴더를 볼 때 URL 부분에 표시되는 ID입니다.
※
https://drive.google.com/drive/u/0/folders/
이하 부분
코드
DriveApp.getFolderById
에 폴더 ID를 지정하여 폴더를 가져옵니다.가져온 폴더의
getFiles()
메서드에서 파일 목록을 가져옵니다.DriveApp.getFolderById(folderID);
파일 정보는 이터레이터로 취득하는 형태가 되므로,
hasNext()
로 파일의 존재를 확인하면서 next()
로 파일의 실태를 취득합니다.파일 이름은
getName()
로 구할 수 있습니다.파일 ID를 취득하고 싶은 경우는
getId()
메소드를 이용합니다.function myFunccton() {
let folderID = "XXXXXXXXXX"
let folder = DriveApp.getFolderById(folderID);
let files = folder.getFiles();
while(files.hasNext()) {
file = files.next();
console.log(`[${file.getName()}]${file.getId()}`);
}
}
덧붙여서 문자열 부분을 백쿼트로 둘러싸 두면,
${}
를 이용해, 변수나 함수의 반환값을 문자 출력할 수가 있습니다.결과
로그에 다음과 유사한 목록이 표시됩니다.
(ID 부분 숨기고 있습니다)

폴더 이름으로 파일 목록 얻기
DriveApp.getFoldersByName
를 사용하여 폴더 이름을 지정하여 폴더를 검색할 수도 있습니다.
GoogleDrive에 있는 모든 동일한 폴더 이름을 가져오는 형태이므로 반환값은 폴더 반복자입니다.
이번에는 지정한 폴더 이름이 GoogleDrive에 하나 밖에 없다고 결정한 전제로 이터레이터의 첫 번째 폴더를 취득하고 있습니다.
DriveApp.getFoldersByName(folderName);
코드
코드는 다음과 같습니다.
결과는 폴더 ID 지정의 경우와 동일하므로 생략합니다.
function myFunction() {
let folderName = "SubFolder"
// イテレータで取れるので1つ目を決め打ちで取得
let folder = DriveApp.getFoldersByName(folderName).next();
let files = folder.getFiles();
while(files.hasNext()) {
file = files.next();
console.log(`[${file.getName()}]${file.getId()}`);
}
}
주의점
GoogleDrive에 액세스하기 때문에 처음 실행할 때 액세스 승인을 받아야합니다.
조금 수수가 많기 때문에, 수속의 스쿠쇼를 붙여 둡니다.
사용 권한 확인

해당 Google 계정 선택

경고 대화상자
세부정보 클릭

자세한 내용이 표시되므로 (安全ではないページ)に移動

액세스 요청 대화 상자
권한을 누르십시오.

이상의 수속을 끝낸 뒤 다시 실행하면, 보통으로 실행할 수 있게 됩니다.
참고 정보
■ Google 공식 DriveApp Api
참조
ぇぺぺrs. 오, ぇ. 코 m / 아 ps-sc 리 pt / 레후 렌세 / d 리 ゔ ぇ / d 리 ゔ ぇ 아 p
■ Google Apps Script로 Google 드라이브를 사용하는 가장 간단한 스크립트
htps : //가 되어-t. 이 m/가 s-오 g-d 리ゔぇ-아 p/
Reference
이 문제에 관하여(Google Apps Script(GAS)에서 GoogleDrive의 지정된 폴더에서 파일 목록 가져오기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/beckyJPN/items/2ff74d5d13322b95a34e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
DriveApp.getFoldersByName(folderName);
function myFunction() {
let folderName = "SubFolder"
// イテレータで取れるので1つ目を決め打ちで取得
let folder = DriveApp.getFoldersByName(folderName).next();
let files = folder.getFiles();
while(files.hasNext()) {
file = files.next();
console.log(`[${file.getName()}]${file.getId()}`);
}
}
GoogleDrive에 액세스하기 때문에 처음 실행할 때 액세스 승인을 받아야합니다.
조금 수수가 많기 때문에, 수속의 스쿠쇼를 붙여 둡니다.
사용 권한 확인

해당 Google 계정 선택

경고 대화상자
세부정보 클릭

자세한 내용이 표시되므로
(安全ではないページ)に移動

액세스 요청 대화 상자
권한을 누르십시오.

이상의 수속을 끝낸 뒤 다시 실행하면, 보통으로 실행할 수 있게 됩니다.
참고 정보
■ Google 공식 DriveApp Api
참조
ぇぺぺrs. 오, ぇ. 코 m / 아 ps-sc 리 pt / 레후 렌세 / d 리 ゔ ぇ / d 리 ゔ ぇ 아 p
■ Google Apps Script로 Google 드라이브를 사용하는 가장 간단한 스크립트
htps : //가 되어-t. 이 m/가 s-오 g-d 리ゔぇ-아 p/
Reference
이 문제에 관하여(Google Apps Script(GAS)에서 GoogleDrive의 지정된 폴더에서 파일 목록 가져오기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/beckyJPN/items/2ff74d5d13322b95a34e
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Google Apps Script(GAS)에서 GoogleDrive의 지정된 폴더에서 파일 목록 가져오기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/beckyJPN/items/2ff74d5d13322b95a34e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)