• [^] # Re: warf

    Posté par . En réponse au message cat /etc/fstab | fgrep -v $udi > /etc/fstab. Évalué à 2.

    Je ne savais pas que la redirection était ouverte en premier - merci de me l'apprendre. Ce qui était le plus étonnant, c'est le côté aléatoire de la chose: la plupart du temps, ça marchait, mais parfois ça plantait et je perdais tout mon fstab à cause de ça.

    Bon, j'ai trouvé un bon remplacement avec sed -i.

    Comme $udi contient des '/', je crée une nouvelle variable $udi_sed qui échappe tous les slashs, car malheureusement, il semble impossible d'utiliser un autre caractère de délimitation avec l'extension d (du genre #...#d).

    udi_sed=$(echo $udi | sed "s#/#\\\/#g")

    Et ensuite, un coup de sed:

    sed -i "/$udi_sed/d" /etc/fstab

    Pour info, udi vient de HAL (unique device identifier); il faudra que je regarde du côté des règles de nommage d'udi pour vérifier qu'il ne peut pas inclure '*', ',' ou tout autre caractère faisant partie des expressions régulières / rationnelles...