我正在尝试创建一个googlecloudsql示例的清单,并将其保存在一个单独的mysql数据库中,这样我就可以将它输入到现有的本地清单中。
要获取gcloud示例的列表,我可以运行以下命令:
$> gcloud sql instances list
它将返回类似于:
NAME DATABASE_VERSION LOCATION TIER ADDRESS STATUS
inst3 MYSQL_5_7 europe-west4-b db-f1-micro xx.xx.xx.xx RUNNABLE
inst2 MYSQL_5_6 europe-west4-b db-f1-micro xx.xx.xx.xx RUNNABLE
zandra MYSQL_5_7 europe-west4-c db-f1-micro xx.xx.xx.xx RUNNABLE
在bash脚本中,如果我像这样运行:
$> allinstances=`gcloud sql instances list`
设置一个名为 allinstances
,然后如何将其插入到名为 gcloudinv
我尝试此操作时预期会出现错误:
$> mysql -uuser -ppassword gcloudinv < allinstances
我知道这样做行不通,但我需要在两者之间做些什么来将输出转换成mysql可以使用的格式。
理想情况下,我将覆盖这个基本库存每天。
谢谢
1条答案
按热度按时间thigvfpy1#
笔记:
tail -n +2
从输入中删除第一行不要使用``获取命令输出,它已被弃用,不能嵌套。使用
$( .. )
您可以使用以下字符串将变量的内容导入命令中:mysql -uuser -ppassword gcloudinv <<<"$allinstances"
在删除第一行之后,需要将该行转换为insert mysql语句。