Dan*_*Rox 10 bash ubuntu shell-script curl variable
当我curl在下一个脚本中对命令使用实际值时,它正在工作并返回结果,但是当我使用变量时,它无法正常工作
我认为这是我如何在命令中定义它们的问题
amz_t=$(cat amazon-token.txt )
flx_id=$(cat flex-id.txt )
ses_t=$(cat session-token.txt )
curl -s -H 'Host: flex-capacity-na.amazon.com' \
-H 'Cookie: session-token='$ses_t'' \
-H 'x-amz-access-token: '$amz_t'' \
-H 'x-flex-instance-id: '$flx_id'' \
-H 'Accept: */*' \
-H 'User-Agent: iOS/10.2.2 (iPhone Darwin) Model/iPhone Platform/iPhone6,1 RabbitiOS/2.0.141' \
-H 'Accept-Language: en-us' \
--compressed 'https://flex-capacity-na.amazon.com/GetOffersForProvider?serviceAreaIds=122' >> output.txt
Run Code Online (Sandbox Code Playgroud)
这是我尝试在脚本中运行的命令,上面提到的 txt 文件只包含某些值,没有垃圾值。
cas*_*cas 14
尝试这样的事情:
amz_t=$(cat amazon-token.txt)
flx_id=$(cat flex-id.txt)
ses_t=$(cat session-token.txt)
UA='iOS/10.2.2 (iPhone Darwin) Model/iPhone Platform/iPhone6,1 RabbitiOS/2.0.141'
URL='https://flex-capacity-na.amazon.com/GetOffersForProvider?serviceAreaIds=122'
curl -s -H 'Host: flex-capacity-na.amazon.com' \
-H "Cookie: session-token=$ses_t" \
-H "x-amz-access-token: $amz_t" \
-H "x-flex-instance-id: $flx_id" \
-H 'Accept: */*' \
-H "User-Agent: $UA" \
-H 'Accept-Language: en-us' \
--compressed "$URL" >> output.txt
Run Code Online (Sandbox Code Playgroud)
对固定字符串使用单引号(即其中没有任何变量),对需要进行变量插值的字符串使用双引号。