2011-12-07 9 views
1

変数をカール出力に割り当てるシェルスクリプトを作成しようとしています。ShellScriptでCurl出力に基づいて変数を割り当てる

$curl "test.test.com/landing/505978290?c=Area%20Rug" 
www.test.com/test/test?test=test 

このURLにアクセスして別のURLを簡単に出力テキスト文書になっている:私は、コマンドラインから実行し、このcurlコマンドの出力はこれです。私はこの2番目のURLは、それが想定されているURLであることをテストしたい。私はシェルスクリプトを実行すると

url = $(curl "test.test.com/landing/505978290?c=Area%20Rug") 
    if [$url -gt "www.tazinga.com/landing/505978290?c=area%20rug&si=gw&alt_css=silver&sv=34&"]   echo ""test.test.com/landing/505978290?c=Area%20Rug did not redirect properly" 
    else 
     echo "Right URL" 
    fi 

はしかし、私はこの出力を得る:私はURLをプリントアウトしようとした場合

 % Total % Received % Xferd Average Speed Time Time  Time Current 
           Dload Upload Total Spent Left Speed 
100 75 0 75 0  0 997  0 --:--:-- --:--:-- --:--:-- 1013 
Command not found. 
-bash: [: missing `]' 
yes 

、私は空の文字列を取得します。文字列が正しく一致するかどうかにかかわらず、これを取得します。コマンドラインとは異なり、シェルスクリプトではカールの動作が異なるのはなぜですか?

答えて

6

なしこのしようと、割り当てたURLにスペースをそこに持っている必要があります: -

url=$(curl -s ...) 

注:-sカールは助けプログレスメーター

+0

を抑制することです。今私は変数urlに文字列にする必要があります。私はこのコマンドを実行しようとすると、今すぐこのエラーが表示されます:いいえそのようなファイルやディレクトリ – Spencer

+0

gtは整数表現のためのもので、あなたは文字列に正確な文字列を比較しようとしますか? – ajreal

関連する問題