使用bash脚本从谷歌应用程序脚本生成的网址下载csv文件

时间:2014-08-21 14:48:12

标签: bash csv google-apps-script

所有,我的目的是将电子表格文件下载为本地csv文件。经过一些测试,我现在来解决方案使用doGet()如下:

function doGet(){
...
var output = ContentService.createTextOutput().setContent(csvOriFile).downloadAsFile(fileName);
return output;
}

可以使用浏览器中的url下载csv文件:     https://script.google.com/macros/s/AKfycby45YEyOpgBruiq1DBa4A2eBAXau8EH.../exec"

由于我想将其设置为每周自动提取的进程,我想编写一个bash脚本来运行url来获取csv文件。但我不知道该怎么做。因为这也与gmail身份验证有关。我搜索了一些解决方案,看来这link是我想要的,但这个问题也没有得到答案。我试图运行并修改该脚本,首先使用curl进行身份验证,然后使用curl获取文件,但失败了。有人可以帮忙吗? 感谢

解决方案: 我后来使用谷歌驱动API来完成工作。

1 个答案:

答案 0 :(得分:0)

没问题。我们想要的是一个有睡眠的循环。在这里我将使用wget,如果你没有得到它或使用curl。

#!/usr/bin/env bash

while true; do
    wget https://script.google.com/macros/s/AKfycby45YEyOpgBruiq1DBa4A2eBAXau8EH.../exec
    sleep 604800
done

如果您需要每周将xlsx转换为csv,那么这就是您可以做的。在循环中睡眠之前添加它。 Convert xlsx to csv in linux command line

您可能还需要考虑每周使用带有备用文件名或子目录的wget。我们不想取代它。我们可以将bash中的日期定义为d = date +%m%d_%H%M