• # awk

    Posté par . En réponse au message sed, c'est dien. Évalué à 6.

    Je pense qu'awk est plus intéressant dans ce cas, après tout sa spécialité c'est le traitement ligne par ligne.

    J'obtiens le même résultat avec la commande suivante :


    echo '
    Unit UnitType Status %Cmpl Stripe Size(GB) Cache AVerify IgnECC
    ------------------------------------------------------------------------------
    u0 RAID-1 OK - - 698.637 ON - -

    Port Status Unit Size Blocks Serial
    ---------------------------------------------------------------
    p0 OK u0 698.63 GB 1465149168 GTF200P8GZB0XF
    p1 ERROR u0 698.63 GB 1465149168 GTF200P8GZB5LF

    ' | awk '{if(!match(0,ドル'/OK/')){print 0ドル}}'


    Si tu es sur que les test se feront toujours sur les lignes commençant par u ou p alors tu peux mettre :

    awk '/^u|^p/{if(!match(0,ドル'/OK/')){print 0ドル}}'

    Il me semble que c'est plus performant, si tu as un grand nombre de lignes bien sur.

    "Aucun de nous ne sait ce que nous savons tous, ensemble", attribué à Laozi.