IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

modifier un caractere dans un fichier


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 6
    Par défaut modifier un caractere dans un fichier
    Bonjour à tous,

    Je dois modifier un fichier 2 fois par an (changement d'heure)

    et dois modifier la ligne:
    TIMEZONE = 08+
    en la remplacant par
    TIMEZONE = 04+

    Enfantin me dirais vous. Oui surement, mais pas pour un débutant :-)

    En fait, je voudrais créer un shell qu'une crontab lancera le dernier dimanche du mois de mars et d'octobre (ca c bon, j'ai deja fait :-)

    Merci beaucoup !!

  2. #2
    Modérateur
    Avatar de gangsoleil
    Homme Profil pro
    Manager / Cyber Sécurité
    Inscrit en
    Mai 2004
    Messages
    10 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Manager / Cyber Sécurité

    Informations forums :
    Inscription : Mai 2004
    Messages : 10 150
    Par défaut
    Bonjour,

    Es-tu certain que la modification d'un fichier texte suffit à changer l'heure réelle de la machine ?

    Exemple en perl pour remplacer, une fois par ligne, str1 par str2 dans le fichier /home/mon_fichier.txt

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /usr/bin/perl -pi -e 's/str1/str2/' /home/mon_fichier.txt
    Attention : pour les scripts cronatb, il est absolument nécessaire d'utiliser les chemins absolus.
    "La route est longue, mais le chemin est libre" -- https://framasoft.org/
    Les règles du forum

  3. #3
    Membre émérite Avatar de BlaireauOne
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    492
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2007
    Messages : 492
    Par défaut
    Applique la substitution de 04 en 08 sur la ligne du fichier contenant la chaîne TIMEZONE

    Avec sed du gnu :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sed -i '/TIMEZONE/s/04/08' fichier

    Avec sed autre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sed '/TIMEZONE/s/04/08' fichier > tmp 
    mv tmp fichier

Discussions similaires

  1. Ecriture par caractere dans un fichier.
    Par SaianSupa dans le forum C
    Réponses: 5
    Dernier message: 29/11/2005, 15h31
  2. Modifier un caractere d'un fichier
    Par elaum dans le forum C
    Réponses: 9
    Dernier message: 27/09/2005, 22h03
  3. modifier une variable dans un fichier
    Par Guismay dans le forum Langage
    Réponses: 7
    Dernier message: 11/09/2005, 19h46
  4. [langage] recuperer 8 caracteres dans un fichier
    Par ifan dans le forum Langage
    Réponses: 12
    Dernier message: 24/05/2005, 17h01
  5. remplacer un caractere dans un fichier
    Par ickis dans le forum C
    Réponses: 11
    Dernier message: 13/10/2003, 09h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo