centos gdrive 脚本,上传到新文件夹

centos gdrive 脚本,上传到新文件夹

我在用着https://github.com/prasmussen/gdrive

你好,

我正在尝试运行一个每日脚本,该脚本在 Google Drive 中创建一个文件夹,然后在其中上传一堆 tar 存档。到目前为止,我可以创建文件夹,但如果我没有文件夹的 ID,并且不知道如何获取它,则无法上传。目前,我正在上传到默认文件夹并手动移动文件。

这就是我到目前为止所拥有的

#!/bin/bash

drive folder -t $(date '+%d-%m-%y') //makes the folder

for file in /home/backup/*.tar
do
drive upload -f "$file" -p (the newly created folder id)
done

答案1

根据您链接到的页面,当您创建目录时,gdrive 会打印它的 id。看看它给出的例子:

$ gdrive mkdir gdrive-bin
Directory 0B3X9GlR6EmbnY1RLVTk5VUtOVkk created

因此,您可以使用 awk 来保留第二个单词,然后将其提供给后面的上传命令:

#!/bin/bash
dir=$(drive mkdir $(date '+%d-%m-%y') | awk '$3=="created"{print $2}')
: ${dir?}
for file in /home/backup/*.tar
do   drive upload -p "$dir" "$file"
done

: ${dir?}如果我们找不到 id,则会停止脚本。

答案2

您需要找到要上传文件的文件夹的 ID 我建议您创建 pas,例如键入

$ gdrive ./gdrive list
1yJz6M094WNWVPoM09u2m8GjoLiumSdxl   Empresa                           0.0 B      2018-06-29 12:12:03   
1TS8b3JDx6RNeIvFN6HqAI9gNuNrs5D-b   Banco de Dados                    0.0 B      2018-06-29 12:11:42   
**1RYvaOGgf6E4HikDZ0cKKwoG-aShe6j6E**   Sistema                           0.0 B      2018-06-28 14:53:28   

复制您要查找的文件夹的 ID 并在 -p 之后粘贴,例如:

#!/bin/bash
dir = $ (drive mkdir $ (date '+% d-% m-% y') | awk '$ 3 == "created" {print $ 2}')
: $ {dir}
for file in /home/backup/*.tar
of the drive upload -p "$ dir" "$ file" **1yJz6M094WNWVPoM09u2m8GjoLiumSdxl**
done

相关内容