W jaki sposób odnaleźć w pliku xxx i zamienić na yyy?

0

Witam, piszę właśnie skrypt, który pozwoli mi bez zbędnego klikania szybko dodać nowy projekt i ma przyjąć parametry takie jak: ścieżka do katalogu public w projekcie oraz nazwa projektu.

Celem tego skryptu jest:

  • utworzenie katalogu o odp. nazwie w folderze www (/home/$USER/www)
  • utworzenie nazwaprojektu.conf w /etc/apache2/sites-available
  • odnalezienie w configu (template ponizej) linii gdzie definiuję ścieżkę do pliku index.php tzn. /home/$USER/www/nazwaprojektu/
    i zamienienie tej linii w zależności od pobranego parametru na/home/$USER/www/nazwaprojektu/ - defaultowa wartość lub np. /home/$USER/www/nazwaprojektu/public_html oraz podmienienie domenty nazwaprojektu.dev na podaną w parametrze nazwęprojektu.dev
  • aktywowanie strony a2ensite
  • restart serwera a2rest
  • edytowanie /etc/hosts i dodanie 127.0.1.x nazwaprojektu.dev
    Innymi słowy w pierwszym pogrubionym chodzi o podmianę wartości z templatki poniżej na te podane w parametrach skryptu.
<VirtualHost *:80>
    ServerName nazwaprojektu.dev
    DocumentRoot /home/$USER/www/
    <Directory /home/$USER/www/>
        Options None
        Order deny,allow
        Allow from all
    </Directory>
</VirtualHost>

Tak to wygląda z grubsza. Mniej więcej mam już zarys tego skryptu, ale to w zasadzie te najlatwiejsze rzeczy. Nie umiem sobie poradzić z tymi pogrubionymi. Proszę o pomoc :)

PS. Skrypt ten również ma zadanie czysto edukacyjne, także zależy mi na rozwiązaniu zaproponowanym przeze mnie (chciałbym wiedzieć jak tą konkretną rzecz się wykonuje), jeżeli istnieje jakieś lepsze to proszę o podanie 2.

2

Ja do tego wykorzystuje SEDa, podsyłam linka z tutorialem:
http://www.brunolinux.com/02-The_Terminal/Find_and%20Replace_with_Sed.html
więcej na temat SEDa:
http://www.gnu.org/software/sed/manual/sed.html

0

A jeżeli chodzi o edycję /etc/hosts, to mogę wrzucić to 127.... na końcu pliku? Czyli jak plik wygląda tak:
`127...
127...
127...

jakies bzdety

...
..
.
Tutaj kolejne 127...?`

Czy muszę jakoś wmontować to przed #?

1

Po komentarzu powinno zadziałać :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1