Как использовать curl в скрипте оболочки? - PullRequest
14 голосов
/ 30 ноября 2011

Я пытаюсь запустить этот сценарий оболочки для установки RVM в окне Ubuntu

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

bash < <(curl $CURLARGS $RVMHTTP)

, но я получаю следующую ошибку

Синтаксическая ошибка: неожиданное перенаправление

Также проверено не использование переменных, но тот же результат, не могли бы вы сказать, что мне не хватает?

Ответы [ 3 ]

17 голосов
/ 30 ноября 2011
#!/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

или

Выполнить bash-скрипт из URL

4 голосов
/ 26 сентября 2013
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
4 голосов
/ 30 ноября 2011

Во-первых, ваш пример выглядит вполне корректно и хорошо работает на моей машине. Вы можете пойти другим путем.

curl $CURLARGS $RVMHTTP > ./install.sh

Весь вывод теперь сохраняется в ./install.sh файле, который вы можете редактировать и выполнять.

...