skrypt .sh zmieniaj

Potrzebujesz pomocy z C, C++, perl, python, itp.
freak82
Posty: 14
Rejestracja: 21 kwietnia 2007, 23:23

skrypt .sh zmieniający codziennie datę w pliku

Post autor: freak82 »

Witam.

Chciałbym stworzyć skrypt, który codziennie zmienia datę w pliku html. Problemem nie jest sama zmiana, tylko to, iż serwer pracuje od poniedziałku do piątku i nie mogę przeskoczyć tej weekendowej "dziury".
Próbowałem w ten sposób, jednak nie do końca to działa:

Kod: Zaznacz cały

#!/bin/sh

dzien=`date +%a`
dzisiaj=`date +%F`
wczoraj=`date --date '-1 day' +%F`
piatek=`date --date '-3 day' +%F`
www=/var/www

if [ $dzien="pon" ]
then
sed -e "s/$piatek/$dzisiaj/g" $www/index.html > $www/pog.tmp
else
sed -e "s/$wczoraj/$dzisiaj/g" $www/index.html > $www/pog.tmp
fi

mv $www/pog.tmp $www/index.html
Można prosić o jakąś wskazówkę? Z góry dziękuje.
Załączniki
index.zip
(1.66 KiB) Pobrany 73 razy
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Poprawny algorytm, to 90% sukcesu.
Sprawdź tak:

Kod: Zaznacz cały

#!/bin/bash

dzis_dt=`date +%a`
dzis_data=`date +%F`
www=/var/www

if [ "$dzis_dt" = "pon" ]; then
    stara_data=`date --date '-3 day' +%F`
else
    stara_data=`date --date '-1 day' +%F`
fi

echo $dzis_dt
echo $dzis_data
echo $stara_data

sed -e "s/$stara_data/$dzis_data/g" $www/index.html > $www/pog.tmp
mv $www/pog.tmp $www/index.html
Z innej beczki: nie prościej byłoby użyć javascriptu w tym pliku html?

Edycja:
Po zajrzeniu do źródła pliku, javascript - nie do końca. php jednak "można" poprosić o pomoc. No chyba, że na maszynie, na której umieszczasz ten plik nie masz obsługi php.
freak82
Posty: 14
Rejestracja: 21 kwietnia 2007, 23:23

Post autor: freak82 »

Dziękuję.
Z dodaniem obsługi php do serwera apache nie byłoby problemu, tylko czy jest sens dla jednego prostego skryptu ją włączać?

Pozdrawiam.
mariaczi
Member
Posty: 1343
Rejestracja: 08 lutego 2008, 12:58
Lokalizacja: localhost@śląskie

Post autor: mariaczi »

Sens widzę jak najbardziej.
Teraz masz tak (wycinek znaczącej linii):

Kod: Zaznacz cały

src="http://www.pogodynka.pl/http/assets/products/main_page_maps/day_2011-03-14d.jpg"
po włączeniu php, zmieniasz na

Kod: Zaznacz cały

src="http://www.pogodynka.pl/http/assets/products/main_page_maps/day_<?echo date('Y-m-d')?>d.jpg"
i śpisz spokojnie, nawet jeśli ktoś zapragnie skorzystać z serwera w weekend.
ODPOWIEDZ