• [^] # Re: ça avance :-)

    Posté par (site web personnel, Mastodon) . En réponse au message [résolu] visualiser charge CPU et mémoire | mesurer l'efficience. Évalué à 2. Dernière modification le 17 mars 2022 à 15:01.

    Essaye en ligne de commande directement pour voir si ça affiche quelque chose ; peut-être qu'une erreur de syntaxe fait que la commande ne va pas au bout ?

    # avec ton shell
    $ printf '%s\t.\n' "foo"
    foo .
    # avec /bin/sh
    $ /bin/sh -c "printf '%s\t.\n' 'foo'"
    foo .

    Comme ça semble se gâter au second, peut-être qu'il y a un truc juste avant qu'il n'aime pas ; essaye ceci :

    set -x
    TheMem=$(awk -v N=$NbrCrs '/Mem:/ {print 7ドル/N}') # mémoire disponible
    TheLoad=$(uptime | awk '{print 10ドル}') # load average de la dernière minute
    TheTime=$(date +"%Y-%M-%dT%H%M%S")
    printf '%s\t' "$TheMem" >> $outputfile #
    set +x
    echo "1. $TheMem"
    echo "2. $TheLoad"
    echo "3. $TheTime"
    cat "$outputfile"
    exit

    Pendant que j'écris cette réponse je me rend compte qu'il y a une petite erreur que j'avais pas vu en lisant : ton premier appel à AWK n'a pas de fichier sur lequel travailler ...et n'est pas branché sur l'entrée standard par le pipe sur une autre commande. (c'est probablement à partir de là que ça part en vrille...)

    edit : je viens de relire, et j'avais laissé une erreur dans ma réponse. la comparaison avec la version echo donne la réponse :

    echo -e "$(date)\t$(free -t | awk '/Mem:/{print 7ドル}')\t$(uptime | awk -v N=$NbrCrs '{print 10ドル/N}')\t" >>"$outputfile"

    "It is seldom that liberty of any kind is lost all at once." ― David Hume