• # À propos de ta syntaxe

    Posté par (site web personnel) . En réponse au message comment je vide proprement mon /boot des vieux noyaux installés par ma distrib. Évalué à 3.

    Bon, je vais faire mon chieur, mais tu devrais changer quelques trucs niveau habitudes (pour Bash) :

    1) Les backquotes sont un reliquat d'un temps révolu. Remplace-les par $(…)
    2) Même remarque pour la commande seq. Tu peux la remplacer avantageusement par {1..3} par exemple
    3) Quotes! Si tu veux t'éviter des bogues bien piquantes (bash séparer les noms constitués d'espaces entre autres), je te conseille vivement de changer tes appels de variables : "$VAR".
    4) il n'y a pas de première ligne indiquant l'interpréteur ! #!/bin/bash

    Ça donnerait ça (pas testé, mais ça devrait aller tout seul ) :

    #!/bin/bash
    # recupere la liste des paquets à desinstaller à partir des parametres.
    # VERSION sera 3.x.y
    VERSION="1ドル"
    # DEBUT et FIN seront les variantes (le z dans 3.x.y-z de la version du paquet)
    DEBUT="2ドル"
    FIN="3ドル"
    # on fait une boucle sur la sequence comprise entre $DEBUT et $FIN avec l'outil seq
    # pour chaque valeur de la boucle, on fait cherche les paquets correspondants avec dpkg -l | grep...
    # on filtre cette liste pour ne recuperer que la 2e colonne de la sortie de dpkg avec awk
    LISTE=$(for i in {"$DEBUT".."$FIN"}; do dpkg -l | grep "$VERSION-$i" | awk '{print 2ドル}'; done)
    # on demande à aptitude de purger tous les paquets que l'on a listés juste avant.
    sudo aptitude purge "$LISTE"