• [^] # Re: moi c'est l'inverse

    Posté par (site web personnel, Mastodon) . En réponse au journal Linux ne m'intéresse plus. Évalué à 10.

    La solution c’est ça :

    while read file
    do
     </dev/null otherscript "${file}"
    done

    parce que ta commande peut aussi lire l’entrée standard et donc si ton script contenant le while read reçoit en entrée standard:

    one
    two
    three
    four
    

    il est possible que ton script exécute en réalité :

    otherscript one
    otherscript four
    

    Parce que otherscript aura lu les lignes two et three.

    Par exemple ffmpeg peut lire l’entrée standard, donc tu vas t’arracher les cheveux pendant des heures à essayer de comprendre pourquoi tout n’est pas converti en faisant ça :

    while read line
    do
     ffmpeg -i "${line}" "out-${line}" -vcodec copy -acodec copy
    done

    ce commentaire est sous licence cc by 4 et précédentes