我正试图在php和bash中制作一组脚本,要求对我的应用程序中的错误进行错误检测,制作我需要的一切,并将几个文件上传到谷歌文档,这样公司中的每个人都可以看到最新的所有数据。
我这样做是因为,正如你所知,Bugsense只给我过去30天的信息,所以我不能在那里存储我的应用程序崩溃的历史记录。
我遇到的唯一问题是如何在不删除谷歌电子表格并再次上传的情况下编辑它。我的意思是,我现在正在做的是:
google docs get $GOOGLE_DOC $GOOGLE_DOC_TSV
现在我有了要编辑的文件,我从驱动器中删除了它,因为如果我再次上传,它将不会覆盖,我将不得不使用相同名称的文件:
google docs delete $GOOGLE_DOC --yes
在那之后,我只需要用文件做我需要的一切,然后再次上传:
google docs upload $GOOGLE_DOC_TSV
问题是每次运行脚本时我都会有一个新文件,所以我无法共享该文档,因为我每次都会删除它并上传一个新的。
谷歌允许的另一件事是编辑一个文件:
google docs edit $GOOGLE_DOC --format tsv --editor vim
但是,这个过程不是自动的,因为你需要处理vim。我到处查了一下,但没有找到能解决我问题的东西。
最后,我通过googlecl
的Python代码找到了如何做到这一点。您需要的是构建一个执行以下操作的脚本:
#!/bin/bash -l
#$ -S /bin/bash
#S -N $1
export GOOGLE_DOC=$1
#!Then do whahever you need to do with the google file
这个脚本只是获取第一个参数的值(它将是您想要通过对其执行任何操作来编辑的谷歌文档的路径)。然后你所需要的就是这样调用googlecl
:
google docs edit --title GOOGLE_DOC_TITLE --format FORMAT --editor SCRIPT_WE_JUST_BUILD
GoogleCl
正在您的系统中创建一个临时文件,并将该临时文件的路径传递给editor
(我们的脚本)。所以我们得到的是临时文件的路径。
每当你完成时,googlecl
会查看该文件中是否有任何更改,并在YES
时上传。