erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

1. erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

Jean César
dark777

(usa Slackware)

Enviado em 07/02/2018 - 21:02h

wiki.anon

boa noite galera beleza?

tenho um script que baixa a ultima versao do gcc e compila o mesmo.
Entao baixei o slackbuild do compilador dmd estava tentando fazer o mesmo com ele mas nao estou conseguindo:

no meu script para o gcc esta assim:

bash-4.4$ echo SVERSION=$(lynx --dump ftp://gcc.gnu.org/pub/gcc/releases/|sed -n '$p'|awk -F"/" '{print $NF}')
SVERSION=gcc-7.3.0

bash-4.4$ echo PKGNAMEVERSION=$(lynx --dump ftp://gcc.gnu.org/pub/gcc/releases/|sed -n '$p'| awk -F"/" '{print $NF".tar.gz"}')
PKGNAMEVERSION=gcc-7.3.0.tar.gz

bash-4.4$ echo LINK="ftp://gcc.gnu.org/pub/gcc/releases/$SVERSION/$PKGNAMEVERSION"
LINK=ftp://gcc.gnu.org/pub/gcc/releases/gcc-7.3.0/gcc-7.3.0.tar.gz

Estou tentando fazer o mesmo para o link da digitalmars mas nao esta dando certo pois ele pega o pacote:
ANOATUAL=$(date +%Y)

bash-4.4$ echo PKGNAMEVERSION=$(lynx --dump http://downloads.dlang.org/releases/$ANOATUAL/|sed -n '$p'| awk -F"/" '{print $NF".tar.xz"}')

PKGNAMEVERSION=dmd-2.078.0-0.fedora.i386.rpm.tar.xz

ao inves de pegar o pacote:

PKGNAMEVERSION=dmd.2.078.2.linux.tar.xz


Alguem poderia me dar uma dica para resolver isto?





wiki.anon


  


2. Re: erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 07/02/2018 - 22:28h

Eu parei pra ver o link de download do source, e é http://downloads.dlang.org/releases/2.x/2.078.1/dmd.2.078.1.linux.tar.xz. Ou seja, no seu script o link está errado. A variável $ANOATUAL é desnecessária visto que nos tarballs a indexação (ao que me parece, pelo menos) é por versão.
--
Dino®
Vi veri universum vivus vici
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta
Mensagem do dia: Satã representa conhecimento sem limites e não auto-ilusão hipócrita. 



3. Re: erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 07/02/2018 - 22:28h

Outra coisa: por que usar o lynx pra isso ao invés do wget?
--
Dino®
Vi veri universum vivus vici
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta
Mensagem do dia: Satã representa conhecimento sem limites e não auto-ilusão hipócrita. 



4. Re: erro ao tentar pegar nome de pacote para download no slackbuild

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 07/02/2018 - 22:47h

Desculpa o flood, é que eu estou despejando idéias. Esquece a idéia do wget, olha como eu faria essa bagaça com o lftp mais um grep:
$ lftp -c "open http://downloads.dlang.org/ ; cd releases/$ANOATUAL/ ; ls" 2>/dev/null | grep linux.tar.xz 

A saída vai ser esta:
-rw-r--r--  --  dmd.2.078.2.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.2.linux.tar.xz
-rw-r--r-- -- dmd.2.078.1.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.1.linux.tar.xz
-rw-r--r-- -- dmd.2.078.0.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.0.linux.tar.xz

Perceba que você está com um problema, já que há mais de uma versão do source. Mas a partir daí você trabalha, creio.
--
Dino®
Vi veri universum vivus vici
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta
Mensagem do dia: Satã representa conhecimento sem limites e não auto-ilusão hipócrita. 



5. Re: erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 07/02/2018 - 23:08h

Boa noite.
Segue sugestão:
lynx --dump http://downloads.dlang.org/releases/2018/|awk -F'/' '/^[ ]+[0-9]+.*linux\.tar\.xz$/ {print $6}'|head -n1 

dmd.2.078.2.linux.tar.xz
marcelo oliver


6. Re: erro ao tentar pegar nome de pacote para download no slackbuild[RESOLVIDO]

Jean César
dark777

(usa Slackware)

Enviado em 07/02/2018 - 23:28h

lcavalheiro escreveu:

Desculpa o flood, é que eu estou despejando idéias. Esquece a idéia do wget, olha como eu faria essa bagaça com o lftp mais um grep:
$ lftp -c "open http://downloads.dlang.org/ ; cd releases/$ANOATUAL/ ; ls" 2>/dev/null | grep linux.tar.xz 

A saída vai ser esta:
-rw-r--r--  --  dmd.2.078.2.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.2.linux.tar.xz
-rw-r--r-- -- dmd.2.078.1.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.1.linux.tar.xz
-rw-r--r-- -- dmd.2.078.0.linux.tar.xz.sig
-rw-r--r-- -- dmd.2.078.0.linux.tar.xz

Perceba que você está com um problema, já que há mais de uma versão do source. Mas a partir daí você trabalha, creio.
--
Dino®
Vi veri universum vivus vici
Public GPG signature: 0x246A590B
Só Slackware é GNU/Linux e Patrick Volkerding é o seu Profeta
Mensagem do dia: Satã representa conhecimento sem limites e não auto-ilusão hipócrita. 


Adaptei o seu comando da seguinte forma abaixo:

$ lftp -c "open http://downloads.dlang.org/ ; cd releases/$ANOATUAL/ ; ls" 2>/dev/null | grep linux.tar.xz | sed -n '$p'| awk -F"/" '{print $NF}'|awk '{print $3}'
dmd.2.078.0.linux.tar.xz

tem como fazer ele pegar o dmd.2.078.2.linux.tar.xz ao inves de dmd.2.078.0.linux.tar.xz?
wiki.anon


7. Re: erro ao tentar pegar nome de pacote para download no slackbuild

Jean César
dark777

(usa Slackware)

Enviado em 07/02/2018 - 23:34h

msoliver escreveu:

Boa noite.
Segue sugestão:
lynx --dump http://downloads.dlang.org/releases/2018/|awk -F'/' '/^[ ]+[0-9]+.*linux\.tar\.xz$/ {print $6}'|head -n1 

dmd.2.078.2.linux.tar.xz
marcelo oliver



testei o seu comando e funcionou perfeitamente obrigado pela ajuda..
wiki.anon