学生の備忘録なブログ

日々のことを忘れないためのブログです。一日一成果物も目標。

業務日誌をgoogle driveに残す~Gdrive~

目的

研究日誌と研究時間を残したい。 以下のような条件で残したい。

  • google drive に.txtで残したい
  • 作業時間も残したい
  • 手元のエディタで編集して、uploadしたい

方法

gdriveを使う

gdrive gdriveはgoogledrive周りをCLIで実行できる。

gdriveの使い方

インストール

brew install gdrive

google drive のIDをURLから抜き出す

tokenがdriveのURLに埋め込まれている。 upload先のdriveのフォルダをブラウザで開いて、"drive.google.com/path/to/file/folders/hogehogehoge"というURLの最後を抜き出してくる。

uploadする

gdrive upload {ファイル名} -p {ID}

注意点

同じファイルをuploadコマンドでアップロードすると、別ファイルとして認識される。

shell script

uploadを自動化したい。shellscriptを書けば、時間指定で実行すれば、自動でuploadされる。今回は自動化まではしない。

#!/bin/sh
 
# ファイルパス(google drive のフォルダurlの最後がid)
ID=hoge
# 日付
DATE=`date "+%Y-%m-%d"`


# アップロード
# 引数をファイル名で取る
# 引数がない場合、当日の日誌をuploadする
if [$# -ne 1];then
    
# ファイルがない場合、作成する事もできるが、作成はしない。
if [ -e ${DATE}.txt ];then
gdrive upload ${DATE}.txt -p ${ID} 
fi
exit 1
else # 引数をuploadする
gdrive upload $1 -p ${ID}
fi

exit 0

結論

gdiveはディレクトリごと同期するsyncコマンドがある。これをローカルが優先する設定にすれば、ローカルの変更がdriveに反映される。 今回はシンプルなuploadオプションを使った。

CLIを使うことで、Emacsで日誌を書いてdriveにuploadして、ということがシームレスにできるようになった。