web-dev-qa-db-fra.com

Comment utiliser curl dans un script Shell?

J'essaie d'exécuter ce script Shell afin d'installer RVM dans une boîte Ubuntu

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

bash < <(curl $CURLARGS $RVMHTTP)

mais j'obtiens l'erreur suivante

Erreur de syntaxe: redirection inattendue

Également testé sans utiliser les variables, mais même résultat, pourriez-vous dire ce qui me manque?

14
san983
#!/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

ou:

Exécuter le script bash à partir de l'URL

17
Tilo

Premièrement, votre exemple semble assez correct et fonctionne bien sur ma machine. Vous pouvez suivre une autre voie.

curl $CURLARGS $RVMHTTP > ./install.sh

Toutes les sorties sont désormais stockées dans ./install.sh fichier, que vous pouvez modifier et exécuter.

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
Krunal Shah