
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