url 中发现非法字符

illegal character found in url

我正在尝试从存储在文本文件中的具有不同 ID 的 api 中提取数据,但我不断收到消息 "curl(3): illegal character found in url"。

文本文件包含:

362ae-235sa-3h26g-136gr
652ae-290sa-3h26g-132gr
394ae-275sa-k726g-106gr
362ae-257sa-3le0g-136gr

我的脚本:

for j in $(cat ids.json)    
do
    curl -u "$workspace_username":"$workspace_password" \
         "https://gateway.watsonplatform.net/assistant/api/v1/workspaces/$j/logsversion=2018-07-10" \
     | jq '.' | jq -r '.logs[]' >> test.json
    sleep 3
done

我是新手。谁能帮我写剧本吗?

我可以通过将 CR 附加到文件 ids.json 中的一行来重现您的问题。我只能假设这也是您的问题。我建议修复你的文件。

您可以通过删除不属于您的 ID 的所有字符来自动执行此操作,这些字符应该位于此文件中:

sed -i 's/[^0-9a-z-]//g' ids.json