2011-11-29 6 views
9

私はUbuntuのボックスにRVMをインストールするためにシェルスクリプトでcurlを使用するには?

#!/bin/bash 
RVMHTTP="https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer" 
CURLARGS="-f -s -S -k" 

bash < <(curl $CURLARGS $RVMHTTP) 

をこのシェルスクリプトを実行しようとしているが、私は次のエラー

Syntax error: Redirection unexpected

。また、変数を使用して、同じ結果ではなく検査を受けます私が逃していることを教えてくれますか?

+0

あなたの質問はすでにここに回答されていますhttp://stackoverflow.com/questions/5735666/execute-bash-script-from-url – favoretti

+0

私は私のMac上でそれを試してみましたが、それがうまく働きました。私はそれがUbuntuのbashだと思う(私はダッシュと思う)。あなたはダッシュのマニュアルページをチェックしたいかもしれません。 –

+0

'http:// linux.die.net/man/1/dash' –

答えて

14
#!/bin/bash                                              
CURL='/usr/bin/curl' 
RVMHTTP="https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer" 
CURLARGS="-f -s -S -k" 

# you can store the result in a variable 
raw="$($CURL $CURLARGS $RVMHTTP)" 

# or you can redirect it into a file: 
$CURL $CURLARGS $RVMHTTP > /tmp/rvm-installer 

か:

Execute bash script from URL

4

まず、あなたの例は非常に正しい探していると私のマシンに適しています。あなたは別の方法で行くことができます。

curl $CURLARGS $RVMHTTP > ./install.sh 

編集し、実行することができ、今./install.shファイルに保存するすべての出力、。

4
url=”http://shahkrunalm.wordpress.com“ 
content=”$(curl -sLI “$url” | grep HTTP/1.1 | tail -1 | awk {‘print $2′})” 
if [ ! -z $content ] && [ $content -eq 200 ] 
then 
echo “valid url” 
else 
echo “invalid url” 
fi 
関連する問題