cURL调用使用数字但不包含包含数字的变量

时间:2016-12-19 03:21:47

标签: bash curl

我遇到了一个奇怪的问题。我正在尝试编写路由器脚本以收集使用情况统计信息和其他内容。我正在为auth URL创建一个cURL以获取有效的会话ID,然后使用该会话ID创建另一个cURL到我需要的页面。

这是我的剧本:

SESSION_ID=$(curl --silent -D - -X POST http://10.0.0.1/login.cgi -d'admin_username=admin&admin_password=admin' | grep 'SESSION' | sed 's/Set-Cookie: SESSION=//' | sed 's/; path=\///')
echo $SESSION_ID # 1234567890
curl -v -H "Cookie: SESSION=$SESSION_ID" http://10.0.0.1/modemstatus_dslstatus.html

如果我手动接受SESSION_ID并将其插入'"$SESSION_ID"',一切都很花哨。 cURL显示标题(通过-v),它们是正确的。手动插入会话ID时运行该命令会产生相同的标题。

我确定它很小。请教我一些东西:)

1 个答案:

答案 0 :(得分:1)

检查变量中的回车\r,在某些情况下不会出现简单的echo