• [^] # Re: Quelques lignes de commandes en bash

    Posté par . En réponse au message alternative de la commande paste. Évalué à 1. Dernière modification le 28 janvier 2020 à 13:42.

    La dernière ligne de commande n'était pas nécessaire,
    et le caractère de tabulation était de trop dans le printf

    donc :

    # Trouver la longueur de la ligne la plus longue dans monfichier1
    longMax=0; while read ligne; do [ ${#ligne} -gt $longMax ] && longMax=${#ligne}; done < monfichier1
    # Mettre toutes les lignes du monfichier1 à la même longueur
    > monfichierTmp; while read ligne; do printf "%-"$longMax"s\n" "$ligne" >> monfichierTmp; done < monfichier1
    cat monfichierTmp > monfichier1 && rm monfichierTmp
    # Ajouter ligne à ligne le contenu de monfichier2 à monfichier1
    paste monfichier1 monfichier2 > monfichier1

    ... et dans ce royaume, ceux qui y voient un peu plus clair sont parfois très mal vus.