Srodni

Denic

Usporedjivanje fajlova

Apache-ova datoteka pristupa

Četiri Operativna Sistema

Linux komande

Pogledaj

Enea (Ersan Elmasa)

Ime

Beba

ŽENIM SE

Jebeš biologiju

Stvari koje bih volio uraditi prije smrti

Najnoviji

MySQL database replace

Nagrada

Diplomski

Internet privatnost

IE 6 na Ubuntu 9.10

Random

Javni govor

Hattrick - IV.17 - Dubica 3 : 0 Ersan

Hrabrost – Dževada Christ

Diplomski

Hattrick - IV.17 - Mladost 2 : 5 Ersan

SSI u php

Nedelja, Juli 04, 2010 14:04:35

Nedavno sam imao interesantnan zadatak:
  * Reimovati sve shtml filove u php
  * Napraviti sve shtml includes (<!--#include virtual="/file.shtml"-->) u php includes (<?php include("/file.php");?>)

Na Linux serveru to je izgledalo otprilike ovako (sve rekursivno):
1.find . -name '*.shtml' | sed 's/\(.*\)\.shtml/mv \1.shtml \1.php/'|sh
    Reimenuj sve .shtml fileove u .php
find . -name '*.shtml' nalazi sve .shtml fajlove
sed 's/\(.*\)\.shtml/mv \1.shtml \1.php/' sed edituje listu fajlova gdje s mijenja *.shtml sa  mv \1.shtml \1.php, mv je komanda koja radi stvarno reimenovanje dok 1 uzima ima fajla u prvom stringu i stavlja ga tu
| sh uzima i egzekutuje šta izbaci sed
2.find . -type f | xargs sed -i 's/.shtml/.php/g'
    Mijenja .shtml unutar teksta s .php, tako da <!--#include virtual="/file.shtml"-->) postaje     <!--#include virtual="/file.php"-->)
3.find . -type f | xargs sed -i 's/<\!--#include virtual=\"/<?php include(\"\\//g'
    Slično kao gore: <!--#include virtual="/file.php"--> postaje  <?php include("/file.php"-->
4.find . -type f | xargs sed -i 's/\.php\"-->/\.php\");\?>/g'
I na kraju imamo: <?php include("/file.php");?>

* Naravno, mogao sam optimizorati perl regex i napraviti gore navedeno u dva koraka ali izabrani način mi je bio 'brži' i sigurniji.



Komentari

Vaša email adresa:


*Vaše ime:


Vaš website:


*Molim Vas ukucajte broj s desne strane tekst kutije:
verification image, type it in the box

*Komentar: