<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Deec.it &#187; agenda shell</title>
	<atom:link href="http://www.deec.it/tag/agenda-shell/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.deec.it</link>
	<description>Le Guide Pratiche Dell&#039;Informatica</description>
	<lastBuildDate>Sat, 24 Jul 2010 09:40:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Calendar su GNU/Linux</title>
		<link>http://www.deec.it/2009/11/03/calendar-su-gnulinux/</link>
		<comments>http://www.deec.it/2009/11/03/calendar-su-gnulinux/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 22:25:19 +0000</pubDate>
		<dc:creator>loade</dc:creator>
				<category><![CDATA[Shell]]></category>
		<category><![CDATA[agenda shell]]></category>
		<category><![CDATA[calendar]]></category>
		<category><![CDATA[calendario shell]]></category>

		<guid isPermaLink="false">http://www.deec.it/?p=2020</guid>
		<description><![CDATA[



Questa guida vi spiegherà come configurare un servizio di appuntamenti utilizzando il comando calendar da riga di comando, presente nella maggior parte dei sistemi GNU/linux.
Analizzeremo due casi specifici: calendar ci avviserà ad ogni nuova connessione via shell; calendar ci comunicherà via email i nostri appuntamenti.
Ora dobbiamo creare un file nella home dell&#8217;utente, che verrà letto [...]]]></description>
			<content:encoded><![CDATA[<!-- AdSense Now! V1.77 -->
<!-- Post[count: 3] -->
<div class="adsense adsense-leadin" style="text-align:center;margin: 12px;"><script type="text/javascript"><!--
google_ad_client = "pub-5841373120371067";
/* 468x60, creato 22/09/09 M&amp;P */
google_ad_slot = "8731175604";
google_ad_width = 468;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>Questa guida vi spiegherà come configurare un servizio di appuntamenti utilizzando il comando calendar da riga di comando, presente nella maggior parte dei sistemi GNU/linux.<br />
Analizzeremo due casi specifici: calendar ci avviserà ad ogni nuova connessione via shell; calendar ci comunicherà via email i nostri appuntamenti.<br />
Ora dobbiamo creare un file nella home dell&#8217;utente, che verrà letto da calendar ad ogni nostra richiesta.</p>
<blockquote><p>mkdir ~/.calendar<br />
vi ~/.calendar/calendar</p></blockquote>
<p>Ad ogni invocazione di calendar se il nostro sistema non trova il file presente nella home dell&#8217;utente verranno interrogati i file:</p>
<blockquote><p>/etc/calendar/ o all&#8217;interno di /usr/share/calendar/</p></blockquote>
<p>Per maggiori info sulla gestione di tali file:</p>
<blockquote><p>man calendar</p></blockquote>
<p>Ora torniamo al nostro file calendar, che supporta diverse modalità di utilizzo. Analizziamo le opzioni più importanti. In generale conviene limitarsi a scrivere righe secondo la sintassi seguente, senza commenti e lasciando eventualmente solo righe vuote o bianche:</p>
<blockquote><p>data\tdescrizione</p></blockquote>
<p>Tra la data e la descrizione ci deve essere un codice di tabulazione orizzontale (\t), fate particolarmente attenzione alla tabulazione (soprattutto se fate copia e incolla) altrimenti calendar ignorerà le righe senza tabulazione.</p>
<p>Riporto qualche esempio:</p>
<blockquote><p>11.02   Fare gli auguri al mio amico Pippo che è nato il 2 novembre del 1980.</p></blockquote>
<p>Ora riportiamo un esempio in cui è possibile specificare il giorno della settimana:</p>
<blockquote><p>Sun     Oggi è domenica.</p></blockquote>
<p>Questo messaggio verrà visualizzato tutti i 27 di ogni mese</p>
<blockquote><p>.27	Oggi è giornata di paga.</p></blockquote>
<p>Esistono dei termini che vengono riconosciuti automaticamente da calendar, tipo:</p>
<blockquote><p>Easter*		Buona pasqua!<br />
Easter-2       Buon venerdì di pasqua, fra due giorni è la domenica di pasqua.<br />
Easter+1*	Pasquetta.</p>
<p>11 Fri+1        Primo venerdì di novembre.<br />
11 Fri+2        Secondo venerdì di novembre.<br />
11 Fri+3        Terzo venerdì di novembre.<br />
11 Fri-3        Terzultimo venerdì di novembre.<br />
11 Fri-2        Penultimo venerdì di novembre.<br />
11 Fri-1        Ultimo venerdì di novembre.</p></blockquote>
<p>Per convenzione le date con l&#8217;* sono riconosciute come festività. Altre date utili:</p>
<blockquote><p>01.01*    capodanno<br />
01.06*    epifania<br />
04.01     pesce di aprile<br />
04.25*   liberazione<br />
05.01*    festa del lavoro<br />
08.15*   ferragosto<br />
11.01*   tutti i santi<br />
12.08*   immacolata<br />
12.25*  natale<br />
12.26*  S. Stefano<br />
12.31   ultimo dell&#8217;anno</p></blockquote>
<p>Ora inserendo dentro il file .bashrc il comando :</p>
<blockquote><p>calendar</p></blockquote>
<p>ogni volta che ci collegheremo alla console verrà richiamato il comando.</p>
<p>Nella seconda modalità di utilizzo ci facciamo inviare una email quando c&#8217;è un evento in calendar. Per fare questo dobbiamo fare un piccolo script con il seguente contenuto:</p>
<blockquote><p>vi miocalendar.sh</p>
<p>#!/bin/bash</p>
<p>set -e</p>
<p>if [ $(/usr/bin/calendar -l 5|/usr/bin/wc -l) -gt 0 ]; then<br />
TESTO=$(/usr/bin/calendar -l 5);<br />
/usr/sbin/sendmail -f alias@domainmittente.ext alias@domaindestinatario.ext &lt;&lt; EOM<br />
From: alias@domainmittente.ext<br />
Subject: MioCalendar<br />
To: alias@domaindestinatario.ext<br />
MIME-Version: 1.0<br />
Content-Type: TEXT/PLAIN; charset=US-ASCII<br />
Status: RO<br />
X-Status:\n\n&#8221;;</p>
<p>$TESTO</p>
<p>EOM</p>
<p>fi</p></blockquote>
<p>Con l&#8217;opzione -l 5 diciamo a calendar di avvisarci 5 giorni prima dell&#8217;evento. Infine diamo i permessi d&#8217;esecuzione allo script:</p>
<blockquote><p>chmod 755 miocalendar.sh</p></blockquote>
<p>Ora inseriamo nel file cron dell&#8217;utente le seguenti istruzioni:</p>
<blockquote><p>crontab -e</p>
<p>59 01 * * *  ~/miocalendar.sh</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.deec.it/2009/11/03/calendar-su-gnulinux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
