일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 파이썬
- Excel
- dataframe
- Google Excel
- Mac
- Java
- SQL
- django
- hive
- matplotlib
- GIT
- c#
- math
- Kotlin
- Github
- Redshift
- Tkinter
- gas
- string
- PANDAS
- list
- numpy
- PostgreSQL
- array
- Apache
- google apps script
- Google Spreadsheet
- Python
- PySpark
- Today
- Total
달나라 노트
Google Apps Script : makeCopy (파일 복사하기) 본문
makeCopy() method는 특정 파일을 어떠한 folder 안에 복사하는 기능을 제공합니다.
Syntax
File.makeCopy(name, folder_object)
사용법은 위와 같습니다.
makeCopy() method는 기본적으로 File 객체에 적용할 수 있습니다.
name = 복사되어 생성될 파일의 이름입니다.
folder_object = 복사본을 담을 folder의 객체입니다.
이제 예시를 볼텐데 이 예시에서는 File ID와 Folder ID를 이용합니다.
File ID와 Folder ID를 알기 위해서는 아래 포스트 참고하시면 됩니다.
Folder ID 얻기 = https://cosmosproject.tistory.com/704
File ID 얻기 = https://cosmosproject.tistory.com/705
먼저 제 Google Drive에는 folder_1이라는 이름의 폴더와 my_test라는 스프레드시트 파일이 있습니다.
여기서 저는 m
my_test에는 Sheet1 이라는 시트가 하나 있으며 Sheet1에는 위처럼 데이터가 입력되어있습니다.
그리고 folder_1은 위처럼 현재 비어있습니다. 아무 파일도 없죠.
my_test -> ID = 1bN5ke7FvEPAC2ladE3l_yUvJ5_x_rgGehE5Kgj2k
folder_1 -> ID = 1BWIeYm0qs6ogyZAVNdJvl_JRdEBUwQ
그리고 my_test 파일과 folder_1 폴더의 ID는 위와 같습니다.
function myFunction() {
var file = DriveApp.getFileById('1bN5ke7FvEPAC2ladE3l_yUvJ5_x_rgGehE5Kgj2k');
var folder = DriveApp.getFolderById('1BWIeYm0qs6ogyZAVNdJvl_JRdEBUwQ');
file.makeCopy('copied_file', folder);
}
- var file = DriveApp.getFileById('1bN5ke7FvEPAC2ladE3l_yUvJ5_x_rgGehE5Kgj2k');
- var folder = DriveApp.getFolderById('1BWIeYm0qs6ogyZAVNdJvl_JRdEBUwQ');
일단 Copy & Paste 과정은 모두 파일 객체와 폴더 객체가 필요합니다.
따라서 위처럼 먼저 file, folder 객체를 생성합니다.
- file.makeCopy('copied_file', folder);
그리고 이 부분이 바로 file 객체를 Copy하는 부분입니다.
file 객체에 makeCopy() method를 적용했다는 것은 file객체에 있는 파일의 복사본을 만들겠다는 의미죠.
그리고 복사본으로 생성될 파일의 이름은 copied_file 입니다.
또한 복사본이 저장될 위치는 folder 객체 안에 저장됩니다.
folder 객체는 folder_1이라는 이름의 폴더라고했죠.
위 코드를 실행하고 folder_1으로 들어가봅시다.
비어있던 folder_1에 copied_file이라는 파일이 생성되었습니다.
파일 전체를 복사한 것이기 때문에 copied_file을 열어보면 Sheet1 하나가 존재하는 것과 1, 2, 3이라는 값이 입력된 것까지 완전히 동일합니다.
위 코드를 여러 번 실행하면 위처럼 copied_file이라는 파일이 여러 번 복사됩니다.
이름이 똑같아도 위 파일들은 모두 다른 ID를 가지고 있으며 심지어 원본 파일인 my_test와도 다른 ID를 가지고 있게 됩니다.