[英]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.