簡體   English   中英

從shell腳本中調用Curl

[英]Invoke Curl from within shell script

我在shell腳本中有下面的代碼

#!/bin/bash

oauth_consumer_key='sdfsfsd'
oauth_consumer_key_secret='1sdfsdfs1'
oauth_token='5wrwerwr476a1737fe09de2e4ew'
oauth_token_secret='ec2231779e4'

url='https url goes here'

token=$(./oauth $oauth_consumer_key $oauth_consumer_key_secret $oauth_token $oauth_token_secret GET $url)

curl_path='/usr/bin/curl'
curl_args="-H 'Authorization: $token'"

resp=$($curl_path $curl_args $url)

echo $resp

在這里,我首先通過傳遞參數並捕獲按預期工作的令牌中的輸出,從此程序中運行oauth.sh。 並且此輸出如下所示:

OAuth oauth_consumer_key="45435", oauth_token="4r43", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1415328827", oauth_nonce="4535345", oauth_version="1.0", oauth_signature="bKeewO%2BTJ7IHjurhtaftn9dNfxA%3D"' 'my url goes here'

現在,我需要通過將此參數作為參數傳遞給上面的程序,從而調用curl命令,如下所示:

curl -H 'Authorization: OAuth oauth_consumer_key="45435", oauth_token="4r43", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1415328827", oauth_nonce="4535345", oauth_version="1.0", oauth_signature="bKeewO%2BTJ7IHjurhtaftn9dNfxA%3D"' 'my url goes here'

當我從終端控制台在curl命令上運行時,它可以工作,但是從我的shell腳本中,它給出了couldn't resolve OAuth錯誤

誰能幫我解決這個問題?

謝謝!

看起來這行在當前目錄中尋找“ oauth”。

token=$(./oauth

我會嘗試將絕對路徑放置到oauth而不是./oauth,看看是否可行。

如果那行不通,我將其剝離掉,並注釋掉該行之后的所有內容,然后回顯$ token,看看它是否顯示預期的結果並從那里開始。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM