Google Apps Script プログラミング

Google Apps ScriptでGoogleドライブのファイルをフォルダごとバックアップする処理を作った

2016/07/13

gas_logo-e1398452975672

 

Google Apps Scriptではファイルのコピーは出来てもフォルダのコピーは出来ない。
なのでフォルダごと中身をすべてバックアップするには内部のサブフォルダを全て検索する処理が必要になる。
というわけでフォルダ内のファイル&サブフォルダも全て含めてコピーできる処理を作ったので貼っておきます。

・バックアップ先フォルダ名
・バックアップ対象フォルダ名
上記を設定して時間トリガーでお使いください。

ただし、コピーするファイルが多すぎると途中で処理が止まります。
ドライブを書き換える処理は1日に使用できる回数が決まっているようです。

また、書き換え処理が一定時間で数やりすぎると途中で処理が止まります。
なので「Utilities.sleep(5000);」でコピー処理を1度やるごとに毎回5秒のスリープを入れています。

50個程度のファイルを1日1回 同じGoogleドライブ内にバックアップを取る」時とかに使えると思います。
ファイル数が増えて100個~200個となると、かなりの確率で途中で処理が止まります。

・・・正直GASで書き込み関係の処理は制限ありすぎて使いもんにならない状態ですね。。
有料でドライブ拡張したら制限が増えたりするんだろうか・・・。無料でなきゃ意味ないけど。

・参考にしたリンク
[GAS][スプレッドシート]シート名からシートオブジェクトを取得するには : 逆引きGoogle Apps Script
Google Apps Scriptで、Googleドキュメントのバックアップ | IT屋だけど、なにか?
ファイル・フォルダの探索 – Google Apps 超利用マニュアル
・・・など

以上こんな感じ~

 

スポンサーリンク

-Google Apps Script, プログラミング