Busque el archivo y descárguelo (curl, grep, wget?)


-1

Estoy tratando de configurar un comando con curl y grep que me permita buscar un patrón específico en un sitio web y descargue el enlace de destino.

He intentado innumerables formas con curl wget y otras cosas, pero no pude encontrar una solución. mis investigaciones no fueron particularmente útiles también.

entonces lo que estoy tratando de hacer es:

busque un sitio web ( http://ci.athion.net/job/FastAsyncWorldEdit/lastStableBuild/ ) para cada archivo que comience con "FastAsyncWorldEdit-bukkit-" y termine con ".jar" y luego guárdelo como whatever.jar

Los tutoriales que encontré parecen no funcionar en Jenkins

¡Gracias por cualquier ayuda!


¿Cómo quieres guardar cada archivo whatever.jar?
— gronostaj

lo siento por no estar claro en esto, como user199239 ya se dio cuenta de que solo hay un archivo que cumple los criterios
— FCS

Respuestas:


0

Por lo que veo correctamente, en la página hay solo un archivo jar que se ajusta a sus criterios.
Aquí hay un trazador de líneas desagradable, que hace el trabajo.

wget -c $(curl -s http://ci.athion.net/job/FastAsyncWorldEdit/lastStableBuild/ | tr '=' '\n' | grep FastAsyncWorldEdit-bukkit- | awk -F '"' '{ printf "http://ci.athion.net/job/FastAsyncWorldEdit/lastStableBuild/" $2"\n"}' | grep 'jar$')

¡Perfecto! Exactamente lo que estaba tratando de lograr
— FCS

Bueno, ¿hay alguna posibilidad de que me expliques qué está pasando aquí? porque ahora estoy un poco confundido porque esto funciona pero esto: wget $(curl http://builds.enginehub.org/job/worldedit/last-successful?branch=master | tr '=' '\n' | grep worldedit-bukkit | awk -F '"' '{ printf "http://builds.enginehub.org/job/worldedit/last-successful?branch=master" $2"\n"}' | grep 'jar$') ¿no?
— FCS

Tengo esto haciendo el trabajo por mí ahora, pero Jesucristo, no puedo obtener nada de eso: / curl -L --compressed (curl --compressed "http://builds.enginehub.org/job/worldedit/last-successful?branch=master" 2> /dev/null | grep -o '<a .*href=.*>' | sed -e 's/<a /\n<a /g' | grep worldedit-bukkit | sed -e 's/<a .*href=['"'"'"]//' -e 's/["'"'"'].*$//' -e '/^$/ d')> worldedit.jar 2> / dev / null ... no lo puse en el código porque no sabía cómo para escapar del "` "que ya está allí ...
— FCS

0

Hay enlaces permanentes en la página de lanzamiento, que podrían ser más simples: https://github.com/boy0001/FastAsyncWorldedit/releases/

Además, awk concatena la url con el enlace encontrado, pero la segunda página usa rutas absolutas, por lo que no desea unirse a ellas:

wget -c $(curl -s http://builds.enginehub.org/job/worldedit/last-successful?br‌​anch=master/ | tr '=' '\n' | grep worldedit-bukkit- | awk -F '"' '{ printf $2"\n"}' | grep 'jar$')
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.