[Bash] Rođendani pri startu shella
Postano: 15 sij 2013, 13:44
Oni koji se nalaze u opisu da svakondevno koriste shell/konzolu/terminal i pri tome zaboravljaju na rođendane, a nemaju Fejs ili drugo rješenje da ih podsjeti, moglo bi ih zanimati moje rješenje tog problema
Treba u .bashrc (~/.bashrc) dodati sljedeće linije:
te napraviti datoteku ".rodjendani.txt" u kojoj se nalaze rodjendani osoba u ovom formatu:
Efekt je sljedeći: svaki put kad pokrenete novi prozor konzole ispišu vam se na početku nadolazeći rođendani (uključujući i taj dan). Onaj tko želi da se to događa samo jednom dnevno može dodati da se rođendani ispisuju samo kad ne postoji neka tmp datoteka za taj dan koja se napravi čim se rođendani prvi put prikažu taj dan, npr.
Ja sam svoje rođendane exportao s Fejsa još kad sam ga imao (pomoću neke aplikacije Birthday exporter, tako nešto...) i onda sam dobivenu datoteku konvertirao pomoću kratke Python skripte:
Eto, da više ne zaboravljate rođendane kao ja 
EDIT: dodana provjera (if) radi li se o SSH pristupu jer ako postoji ispis u terminal kod SSH-a onda neki alati poput rsynca neće raditi.
Treba u .bashrc (~/.bashrc) dodati sljedeće linije:
Kod: Označi sve
# Birthdays
if [ -z "$SSH_CLIENT" ]; then
echo "Upcoming birthdays"
today=`date +%d.%m.`
grep -A 3 $today ~/.rodjendani.txt
fi
Kod: Označi sve
21.04. Ime Prezime 1, Ime Prezime 2...
28.11. Ime Prezime...
Ja sam svoje rođendane exportao s Fejsa još kad sam ga imao (pomoću neke aplikacije Birthday exporter, tako nešto...) i onda sam dobivenu datoteku konvertirao pomoću kratke Python skripte:
Kod: Označi sve
#!/usr/bin/python
# -*- coding: utf-8 -*-
inputdata = open('rođendani.txt', 'r')
month = 0
for line in inputdata:
try:
int( line[0] )
day, names = line.split(' - ')
month_zero = "%02d" % month
print str(day.strip())+'.'+month_zero+'.\t'+names,
except:
month += 1
inputdata.close()
EDIT: dodana provjera (if) radi li se o SSH pristupu jer ako postoji ispis u terminal kod SSH-a onda neki alati poput rsynca neće raditi.