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

Unix Discussion :

Changer une ligne dans un fichier php avec un script shell


Sujet :

Unix

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2009
    Messages : 8
    Points : 5
    Points
    5
    Par défaut Changer une ligne dans un fichier php avec un script shell
    Hello,
    J'ai un petit problème je bosse sur un script pour faire une release entre les deux serveurs (dev et exploit) d'un site web.
    Dans ce script tous les différents fichiers CSS sont merge dans un seul fichier.
    Mon problème est au moment où je veux modifier mon fichier pour remplacer les 3 lignes d'appel au css:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $header.="<link rel=\"stylesheet\" media=\"screen,projection\" href=\"/css/misc.css\" type=\"text/css\" />";
    $header.="<link rel=\"stylesheet\" media=\"screen,projection\" href=\"/css/elements.css\" type=\"text/css\" />";
    $header.="<link rel=\"stylesheet\" media=\"screen,projection\" href=\"/css/pages.css\" type=\"text/css\" />";
    par une seule ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $header.="<link rel=\"stylesheet\" media=\"screen,projection\" href=\"/css/style.css\" type=\"text/css\" />";
    voilà et j'ai plein de trucs à coup de grep etc pour les modifier mais je n'arrive à rien...
    Donc si pouviez me filer un petit coup de main j'en serais bien heureux!

    Merci d'avance

  2. #2
    Membre expérimenté Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Points : 1 414
    Points
    1 414
    Par défaut
    Un suggestion.

    Puisque que php semble installé sur tes bécanes. Pourquoi ne pas le faire en php ?
    ----
    L'avenir appartient à ceux dont les salariés se lèvent tôt.

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2009
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Parce que ça fait parti d'un script assez important qui utilise des fonctions shells à tout va est comme il y a plus de trucs à faire en shell qu'en php j'ai trouvé ça plus logique de faire un script shell que de faire un script php avec des exec toutes les deux lignes...
    Et puis comme j'ai jamais trop fait de shell et que j'aimerais bien ça me fait un petit exercice...
    Voilà tout

  4. #4
    Membre expérimenté Avatar de riete
    Homme Profil pro
    DevWeb - Oléiculteur
    Inscrit en
    Avril 2006
    Messages
    1 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : DevWeb - Oléiculteur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 193
    Points : 1 414
    Points
    1 414
    Par défaut
    Ok, je comprends
    Dans ce cas, il va te falloir mettre les doigts dans les expressions régulière si ce n'est déjà fait. Je te propose ceci, mais je te laisse le soin d'échapper tous les caractères spéciaux dans les lignes de code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cat ton.css | sed -e 's/ABC/XYZ/' > tonnew.css
    Ou ABC est le texte à chercher et XYZ celui qui le remplace.
    ----
    L'avenir appartient à ceux dont les salariés se lèvent tôt.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2009
    Messages : 70
    Points : 92
    Points
    92
    Par défaut
    Bonjour,

    Riete à raison mais un petit plus...
    car tu vas utiliser vi pour utiliser sed
    car autrement il va falloir que tu redirige la sortie de ton fichier dans un autre fichier tempo pour le renommer

    Donc pour faire tes cmd sed sans le réenregistré dans un fichier tempo (en live sous vi ou vim)


    Tu vais echap :
    et tu mets ensuite :

    la commande s'exécutera sur toute tes lignes a changé en une seule fois

    NB : fais une sauvegarde de ton fichier avant de commencer les changements ;-)

    Cordialement

Discussions similaires

  1. Réponses: 1
    Dernier message: 22/09/2014, 18h57
  2. Mise à jour d'une ligne dans un fichier texte en php
    Par Pouchou_for_ever dans le forum Langage
    Réponses: 5
    Dernier message: 28/10/2010, 11h31
  3. Réponses: 3
    Dernier message: 12/10/2008, 17h41
  4. Réponses: 9
    Dernier message: 22/05/2006, 12h21
  5. Changer une ligne dans un fichier
    Par peuf23 dans le forum Langage
    Réponses: 9
    Dernier message: 03/08/2005, 16h43

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