bob6 a écrit 5 commentaires

  • # Ben...

    Posté par  . En réponse au message For i in .... Évalué à 1.

    for i in $(</dev/stdin)
    ... mais ta boucle ne commencera que quand t'auras envoyé un EOF (Ctrl-D).
  • # Fin 1997...

    Posté par  . En réponse au sondage Depuis quand utilisez-vous Linux ?. Évalué à 1.

    Un copain s'amène et me dit: "J'ai un pack de bière, de la b*eep* et la nouvelle redhat".

    C'était la Hurricane (5.0), kernel 2.0 bien stabilisé, avec les "révolutionnaires" RPM déjà rôdés, AfterStep était considéré le must du desktop...
    C'était héroïque, rien n'a marché du premier coup, j'ai du chercher un patch pour mon processeur (Cyrix), impossible de configurer XFree. On a finalement réussi vers 5 heures du mat' et j'ai pu consacrer la journée suivante à me lancer dans mon nouveau langage fétiche: Mercury.

    J'y pense avec nostalgie mais je n'ai aucun regret parce que installer me fait chier et les distros ont fait beaucoup beaucoup de progès depuis ce temps-là. En toute objectivité c'est pas plus compliqué que l'autre OS.

    Depuis 1997 j'ai évolué: j'utilise WindowMaker (et le kernel 2.6).
  • [^] # Re: warf

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

    Tu peux utiliser un autre caractère que '/' en échappant le premier, ainsi: sed -i "\#$udi#d" /etc/fstab En revanche sed interprète ce qu'il y a entre // (ou entre \##) comme une expression régulière, tu ferais mieux d'échapper quand même les '.', '*' et compagnie... Je peux aussi te proposer: echo "`fgrep -v $udi /etc/fstab`" > /etc/fstab Comme ça t'es sûr que fstab sera fermé en lecture avant d'être ouvert en écriture.
  • # Config::General

    Posté par  . En réponse au message Substitution de variables. Évalué à 1.

    Comme l'a dit peck, eval peut devenir une faille de sécurité. Si c'est un problème pour toi, je te propose d'utiliser Config::General
    use Config::General;
    my $conf = new Config::General(
    			       -ConfigFile => "/chemin/vers/fichier/config",
    			       -InterPolateEnv => 1
    			       )
        || die "Bouh!";
    my %config = $conf->getall;
    print $config{VAR2}, "\n";
    
    Si la sécurité ne t'inquiète pas, garde la solution eval qui est plus simple...
  • [^] # Re: Youpi !

    Posté par  . En réponse au message Commandes pour Sed.. Évalué à 1.

    Juste des petits détails pour aller encore plus vite (si jamais tes fichiers sont un peu volumineux ou s'ils sont montés par NFS):

    1) Pour remplacer un caractère par un autre tu peux utiliser la commande 'y' au lieu de 's'. Malheureusement, on ne peut pas utiliser 'y' pour éliminer un caractère comme on le ferait avec perl.

    2) Mieux vaut enchaîner les commandes sed avec un ';' plutôt que de donner plusieurs commandes. Ce n'est pas toujours vrai, mais dans ton cas ça l'est.

    3) Si ça ne t'intéresse pas de conserver la forme originale de ton fichier ,tu peux demander à sed d'effectuer ses remplacements directement dans ton fichier source avec l'option '-i'.

    En compilant ces trois remarques, ça donne:
    sed -i -e 'y/#/&/;s/"//g' toto