substituição dentro da string de comando paralela

substituição dentro da string de comando paralela

Quero baixar vários arquivos e salvá-los na soma md5 de seu nome:

cat list | parallel -j4 "md5=$(wget -O - {} | tee tmpfile_{#} | md5sum | cut -d ' ' -f 1); mv tmpfile_{#} $md5"

mas o problema é que o bash parece executar o material do wget antes da execução das substituições paralelas {}... então o wget deseja fazer o download dehttp://{}

então, como o paralelo pode substituir suas variáveis ​​antes da execução do subcomando?

Responder1

algumas tentativas e erros mais tarde:

cat list | parallel -j4 'md5=$(wget -O - {} | tee tmpfile_{#} | md5sum); mv tmpfile_{#} ${md5%% *}'

apenas substituir "por 'não permite que o bash substitua algo primeiro

informação relacionada