Bonjour,
Voila je cherche à modifier des fichiers php mais seulement la 1ere ligne des fichiers mais je bute.
j'ai plusieurs fichier de ce type
au départ j'avais commencer un script comme ceci qui permet de parcourir que les dossiers et sous dossiers
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <?php /*kdkd*/ blabla; blala ?><?php /*daq*/ bla bla ; /dld/; ?><?php echo toto echo some code php ?>
mais j'avais omis quelques cas d'usage
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #!/bin/bash #pour avoir les tous php dans les répertoires et sous répertoires list=$(find . | grep .php | sort) for file in $list do echo "$file" #remplace toute la premiere ligne par <?php sed "1 s/.*/<?php" "$file" > "$file".tmp && mv -f "$file".tmp" "$file" done
premièrement j'ai des fichier php qui ne commence par <?php /*kdkd*/ blabla; blala ?><?php /*daq*/ bla bla ; /dld/; ?><?php.
Deuxièmement les fichiers php peuvent se terminer par autre chose <?php comme header, section, doctype html,...
exemple <?php /*kdkd*/ blabla; blala ?><?php /*daq*/ bla bla ; /dld/; ?> <section id="main">.
Donc je cherche une solution
le motif <?php /*kdkd*/ pourrait servir de condition si mon fichier commence par ce motif alors je le modifie sinon je fais rien
mais attention ce motif peut se répéter plusieurs fois sur la première ligne
ensuite modifier la 1ere ligne en gardant les éléments après le dernier ?> pour ne garder <section id="main"> ou <?php.
j’espère que j'ai été clair.
merci par avance de vos aides
Partager