繁体   English   中英

从json文件curl下载json文件

[英]Downloading json file from json file curl

我有一个json文件,其结构如下所示:

{
    url: "https://mysite.com/myjsonfile",
    version_number: 69,
}

可从mysite.com/myrootjsonfile访问此json文件

我想运行一个加载数据脚本来访问mysite.com/myrootjsonfile并使用curl从URL字段加载json内容,并将结果内容保存到本地存储中。

到目前为止,这是我的尝试。

curl -o assets/content.json 'https://mysite.com/myrootjsonfile' | grep -Po '(?<="url": ")[^"]*' 

不幸的是,与其从mysite.com/myjsonfile中保存内容,不如从上面保存内容:mysite.com/myrootjsonfile。 谁能指出我可能做错了什么? 请牢记全新的卷曲度。 谢谢!

它正在保存myrootjsonfile的内容,因为这就是您要告诉curl进行的操作-将文件保存到位置assets/content.json ,然后grep处理空的stdin。 您需要使用两个curl命令,一个用于下载根文件(并对其进行处理以找到第二个URL),第二个用于下载所需的实际内容。 您可以为此使用命令替换:

my_url=$(curl https://mysite.com/myrootjsonfile | grep -Po '(?<=url: )[^,]*')
curl -o assets/content.json "$my_url"

我还更改了grep regex-此匹配正则字符串后跟“ url:”后面的非逗号字符。

假设您希望将文件保存到assets/content.json ,请注意,标志区分大小写。

使用-o而不是-O将输出重定向到assets/content.json

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM