<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5896686524701293546</id><updated>2012-01-26T10:55:37.506-08:00</updated><category term='PHP'/><category term='Programação'/><category term='PostgreSQL'/><category term='javascript'/><category term='Lucene'/><category term='Avaliação'/><category term='Linux'/><category term='utf8'/><category term='Pessoal'/><category term='Educação Corporativa'/><category term='Exim'/><category term='PostGis'/><category term='XML'/><category term='Moodle'/><category term='Mapserver'/><category term='Matriz Lógica'/><category term='Regular Expression'/><category term='Corridas'/><category term='Suse'/><category term='Ajax'/><category term='Interoperabilidade'/><title type='text'>Caderno de Anotações do Caio Nakashima</title><subtitle type='html'>Esta página contem informações úteis para o dia a dia de meu trabalho</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>75</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4951399693207900674</id><published>2012-01-26T10:55:00.000-08:00</published><updated>2012-01-26T10:55:37.516-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Suse'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Limite de Memoria SUSE</title><content type='html'>Tive um problema de &lt;b&gt;&lt;span class="Apple-style-span" style="color: red;"&gt;out of memory&lt;/span&gt;&lt;/b&gt; em uma aplicação Java. Em uma máquina menos potente o sistema funcionou e em uma máquina com mais memória e processador a aplicação não funcionou. Os dois equipamentos estavam com SO OpenSUSE.&lt;br /&gt;&lt;br /&gt;Verificando a memória com o comando:&lt;br /&gt;&lt;br /&gt;ulimit -a&lt;br /&gt;&lt;br /&gt;e alterando&lt;br /&gt;&lt;br /&gt;ulimit -v unlimited&lt;br /&gt;&lt;br /&gt;Funcionou. Dica do Sergio Matos&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4951399693207900674?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4951399693207900674/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4951399693207900674' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4951399693207900674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4951399693207900674'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2012/01/limite-de-memoria-suse.html' title='Limite de Memoria SUSE'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5524563229742746824</id><published>2012-01-17T06:00:00.000-08:00</published><updated>2012-01-17T06:04:57.158-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ajax'/><title type='text'>Edição HTML com AJAX</title><content type='html'>&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;O estilo apresentado abaixo permite a edição de um campo em uma página HTML, ou seja, permite a edição em uma página de relatório.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;HTML&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&amp;lt;input &lt;/span&gt;&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;input&amp;nbsp;&lt; p=""&gt;&lt;/input&amp;nbsp;&lt;&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;name=""&amp;nbsp;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;onchange="javascript:ajaxCampoResposta(this.value,1,5 )"&amp;nbsp; &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;value="teste" &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;style="width: 100%; background: none repeat scroll 0% 0% transparent; border: 0px none;" &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;onmouseout="this.style.border="0px none"" &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;onmouseover="this.style.border="1px solid #000000"" &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;maxlength="255" &lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;onkeyup=" { document.getElementById("botao_salvar").style.display="";document.getElementById("botao_cancelar").style.display="";this.parentNode.parentNode.firstChild.firstChild.title="*";} this.value = this.value.replace(/\d/g,"").toUpperCase();"&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="font-family: Arial,Helvetica,sans-serif;"&gt;JavaScript - Codigo JavaScript que faz chamada para um Ajax de atualização de Campo.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre id="line1"&gt;function ajaxCampoResposta(oiac_objeto, id_dicionario, id)&lt;br /&gt;{&lt;br /&gt;	/*&lt;br /&gt;	alert(oiac_objeto+campo);&lt;br /&gt;	return true;&lt;br /&gt;	//*/&lt;br /&gt;	var xmlHttp;&lt;br /&gt;	try&lt;br /&gt;	{&lt;br /&gt;		// Firefox, Opera 8.0+, Safari&lt;br /&gt;		xmlHttp=new XMLHttpRequest();&lt;br /&gt;	}&lt;br /&gt;	catch (e)&lt;br /&gt;	{&lt;br /&gt;		// Internet Explorer&lt;br /&gt;		try&lt;br /&gt;		{&lt;br /&gt;			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");&lt;br /&gt;		}&lt;br /&gt;		catch (e)&lt;br /&gt;		{&lt;br /&gt;			try&lt;br /&gt;			{&lt;br /&gt;				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");&lt;br /&gt;			}&lt;br /&gt;			catch (e)&lt;br /&gt;			{&lt;br /&gt;				alert("Seu navegador não suporta AJAX!");&lt;br /&gt;				return false;&lt;br /&gt;			}&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;	xmlHttp.onreadystatechange=function()&lt;br /&gt;	{&lt;br /&gt;		if(xmlHttp.readyState==4)&lt;br /&gt;		{&lt;br /&gt;			// document.getElementById("resultado_ajax").innerHtml=xmlHttp.responseText;&lt;br /&gt;			//alert("Kadu");&lt;br /&gt;			alert(xmlHttp.responseText);&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;	xmlHttp.open("GET","tab_seletor_campos_ajax_resposta.php?p_conteudo="+escape(oiac_objeto)+'&amp;amp;id_dicionario='+id_dicionario+'&amp;amp;id='+id,true);&lt;br /&gt;	xmlHttp.send(null);&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5524563229742746824?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5524563229742746824/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5524563229742746824' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5524563229742746824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5524563229742746824'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2012/01/edicao-html-com-ajax.html' title='Edição HTML com AJAX'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2922859894029081416</id><published>2012-01-16T12:13:00.000-08:00</published><updated>2012-01-17T03:20:21.156-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Algorítimo de DICE</title><content type='html'>&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Dice's_coefficient"&gt;&lt;b style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;"Dice's coefficient&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;, named after&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #ba0000; font-family: sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="background-attachment: initial; background-clip: initial; background-color: white; background-origin: initial; line-height: 19px;"&gt;Lee Raymond Dice&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;&amp;nbsp;and also known as the&amp;nbsp;&lt;/span&gt;&lt;b style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;Dice coefficient&lt;/b&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;, is a similarity measure over sets."&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white; font-family: sans-serif; font-size: 13px; line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;Código para PSQL (POSTGRESQL)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: sans-serif; font-size: x-small;"&gt;&lt;span class="Apple-style-span" style="line-height: 19px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;CREATE OR REPLACE FUNCTION cgu_planilha.dice(texto1 character varying, texto2 character varying)&lt;br /&gt;&amp;nbsp; RETURNS double precision AS&lt;br /&gt;$BODY$&lt;br /&gt;DECLARE&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; qtde1 integer;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; qtde2 integer;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tam_texto1 integer;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tam_texto2 integer;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; tam_texto integer;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; nt float;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; nx float;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ny float;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ch1 varchar;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ch2 varchar;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;t1 varchar;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;t2 varchar;&lt;br /&gt;BEGIN&lt;br /&gt;&amp;nbsp; &amp;nbsp; qtde1 := 0;&lt;br /&gt;&amp;nbsp; &amp;nbsp; t1 := lower(texto1);&lt;br /&gt;&amp;nbsp; &amp;nbsp; t2 := lower(texto2);&lt;br /&gt;&amp;nbsp; &amp;nbsp; t1 := translate(t1, 'áéíóúàèìòùãõâêîôôäëïöüçÁÉÍÓÚÀÈÌÒÙÃÕÂÊÎÔÛÄËÏÖÜÇ', 'aeiouaeiouaoaeiooaeioucAEIOUAEIOUAOAEIOOAEIOUC');&lt;br /&gt;&amp;nbsp; &amp;nbsp; t2 := translate(t2, 'áéíóúàèìòùãõâêîôôäëïöüçÁÉÍÓÚÀÈÌÒÙÃÕÂÊÎÔÛÄËÏÖÜÇ', 'aeiouaeiouaoaeiooaeioucAEIOUAEIOUAOAEIOOAEIOUC');&lt;br /&gt;&lt;br /&gt;&amp;nbsp; &amp;nbsp; tam_texto1 := length(t1);&lt;br /&gt;&amp;nbsp; &amp;nbsp; tam_texto2 := length(t2);&lt;br /&gt;&amp;nbsp; &amp;nbsp; nx = tam_texto1-1;&lt;br /&gt;&amp;nbsp; &amp;nbsp; ny = tam_texto2-1;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp; &amp;nbsp; if (tam_texto2 &amp;gt; tam_texto1) &amp;nbsp;then&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;tam_texto := tam_texto1;&lt;br /&gt;&amp;nbsp; &amp;nbsp; else&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;tam_texto := tam_texto2;&lt;br /&gt;&amp;nbsp; &amp;nbsp; end if; &lt;br /&gt;&amp;nbsp; &amp;nbsp; nt := 0;&lt;br /&gt;&amp;nbsp; &amp;nbsp; LOOP&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ch1 = substr(t1, qtde1, 2);&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;ch2 = substr(t2, qtde1, 2);&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (ch1 = ch2) then&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; nt := nt +1;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;end if; &lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;qtde1 := qtde1 + 1;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;IF qtde1 &amp;gt; tam_texto THEN&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; EXIT; &amp;nbsp;-- exit loop&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;END IF;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; END LOOP;&lt;br /&gt;&amp;nbsp; &amp;nbsp; RETURN (2*nt)/(nx+ny);&lt;br /&gt;END;&lt;br /&gt;$BODY$&lt;br /&gt;&amp;nbsp; LANGUAGE plpgsql VOLATILE&lt;br /&gt;&amp;nbsp; COST 100;&lt;br /&gt;ALTER FUNCTION cgu_planilha.dice(character varying, character varying) OWNER TO postgres;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2922859894029081416?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2922859894029081416/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2922859894029081416' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2922859894029081416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2922859894029081416'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2012/01/algoritimo-de-dice.html' title='Algorítimo de DICE'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2666047428925512246</id><published>2011-11-17T10:30:00.001-08:00</published><updated>2011-11-17T10:30:27.124-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Lucene'/><title type='text'></title><content type='html'>&lt;h4 id="What_is_the_different_between_Stored.2C_Tokenized.2C_Indexed.2C_and_Vector.3F"&gt;What is the different between Stored, Tokenized, Indexed, and Vector?&lt;/h4&gt;&lt;span class="anchor" id="line-310"&gt;&lt;/span&gt;&lt;ul&gt;&lt;li&gt;Stored = as-is value stored in the Lucene index &lt;span class="anchor" id="line-311"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Tokenized = field is analyzed using the specified Analyzer - the tokens emitted are indexed &lt;span class="anchor" id="line-312"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Indexed = the text (either as-is with keyword fields, or the tokens from tokenized fields) is made searchable (aka inverted) &lt;span class="anchor" id="line-313"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Vectored = term frequency per document is stored in the index in an easily retrievable fashion. &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2666047428925512246?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2666047428925512246/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2666047428925512246' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2666047428925512246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2666047428925512246'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2011/11/what-is-different-between-stored.html' title=''/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2900443746003130686</id><published>2011-09-06T04:59:00.000-07:00</published><updated>2011-09-06T05:09:55.779-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Encontrar um arquivo com determinado conteudo</title><content type='html'>Precisei procurar aonde estava o arquivo com o conteúdo "consulta_generica_sql". Assim executei &lt;br /&gt;uma procura de arquivos com extensão ".php" e procurei em cada arquivo o conteúdo "consulta_generica_sql".&lt;br /&gt;&lt;br /&gt;find . -name '*.php' | while read Linha; do echo $Linha; cat $Linha | grep consulta_generica_sql; done&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2900443746003130686?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2900443746003130686/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2900443746003130686' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2900443746003130686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2900443746003130686'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2011/09/encontrar-um-arquivo-com-determinado.html' title='Encontrar um arquivo com determinado conteudo'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3191462111954720640</id><published>2011-03-28T09:42:00.000-07:00</published><updated>2011-11-17T10:39:47.429-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Campos POSTGRES</title><content type='html'>Consulta para apresentar os campos de uma tabela POSTGRES &lt;br /&gt;&lt;br /&gt;select c.relname, a.attname as "Column", pg_catalog.format_type(a.atttypid, a.atttypmod) as "Datatype" &lt;br /&gt;from pg_catalog.pg_attribute a inner join pg_stat_user_tables c &lt;br /&gt;on a.attrelid = c.relid &lt;br /&gt;WHERE a.attnum &amp;gt; 0 &lt;br /&gt;and NOT a.attisdropped &lt;br /&gt;and c.relname = 'nome tabela'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3191462111954720640?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3191462111954720640/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3191462111954720640' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3191462111954720640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3191462111954720640'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2011/03/campos-postgres.html' title='Campos POSTGRES'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4121405452924830689</id><published>2011-01-24T17:36:00.000-08:00</published><updated>2011-01-24T17:37:45.275-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Regular Expression'/><title type='text'>Exemplo de Expressão Regular</title><content type='html'>public static void main(String[] args){&lt;br /&gt;        String entrada;&lt;br /&gt;        String endereco;&lt;br /&gt;         String padrao="href=\"[a-zA-Z.0-9/:_+\-]*.jpg";&lt;br /&gt;        padrao="h[a-zA-Z.0-9/:_+\-]*-h/[a-zA-Z.0-9/:_+\-]*.png";&lt;br /&gt;        FileInputDemo aux = new FileInputDemo();&lt;br /&gt;        File testFile = new File("c:/Aulas/RegEx/pagina_julho_2010a.txt");&lt;br /&gt;        entrada = aux.getContents(testFile);&lt;br /&gt;        URLConnectionReader auxUrl = new URLConnectionReader();&lt;br /&gt;            Pattern pattern = Pattern.compile(padrao);&lt;br /&gt;&lt;br /&gt;            Matcher matcher = pattern.matcher(entrada);&lt;br /&gt;&lt;br /&gt;            boolean found = false;&lt;br /&gt;            while (matcher.find()) {&lt;br /&gt;                endereco = matcher.group().substring(6);&lt;br /&gt;                try {&lt;br /&gt;                   System.out.println(endereco);&lt;br /&gt;                   // auxUrl.urlRead(endereco);&lt;br /&gt;                } catch (Exception ex) {&lt;br /&gt;                    Logger.getLogger(RegEx.class.getName()).log(Level.SEVERE, null, ex);&lt;br /&gt;                }&lt;br /&gt;                found = true;&lt;br /&gt;            }&lt;br /&gt;            if(!found){&lt;br /&gt;                System.out.printf("No match found.%n");&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4121405452924830689?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4121405452924830689/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4121405452924830689' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4121405452924830689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4121405452924830689'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2011/01/exemplo-de-expressao-regular.html' title='Exemplo de Expressão Regular'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4989528311364986852</id><published>2010-12-19T06:55:00.000-08:00</published><updated>2010-12-19T07:04:17.655-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>Corrida da Zero Hora</title><content type='html'>Entre os dias 18 e 19 de dezembro de 2010, ocorreu a corrida da Zero Hora na esplanada dos ministérios. Foram 3 voltas na Esplanada em um percurso de 7,5 km.&lt;br /&gt;&lt;br /&gt;Fiz o tempo de 39 min e 45 seg. Número no peito: 233. Foi muito agradável a corrida, pois o tempo estava muito úmido e temperatura por volta dos 17 graus Centígrados.&lt;br /&gt;&lt;br /&gt;O meu joelho não estava bem, senti uma dor constante no joelho durante a corrida, mas o tempo foi muito bom.&lt;br /&gt;&lt;br /&gt;Corri a uma velocidade média de 11,0 km / h, pace de 5,3 min / km.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4989528311364986852?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4989528311364986852/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4989528311364986852' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4989528311364986852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4989528311364986852'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/12/corrida-da-zero-hora.html' title='Corrida da Zero Hora'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-206170557007814442</id><published>2010-12-19T06:50:00.000-08:00</published><updated>2010-12-19T06:55:28.243-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>I Corrida Venceremos a Corrupcao - 2010 » Corrida 10km</title><content type='html'>Corrida do dia 12 de dezembro de 2010.&lt;br /&gt;&lt;br /&gt;Tempo: 1h09min52seg.&lt;br /&gt;Numero no Peito: 48&lt;br /&gt;Colocação: 200&lt;br /&gt;&lt;br /&gt;Comentário: O percurso saiu do Congresso Nacional e foi até o Memorial JK. Somente subida na ida. Foi muito forte a subida, levei 33 min para fazer cerca de 5 km. A descida foi pior.&lt;br /&gt;&lt;br /&gt;Resumindo, foi o pior tempo entre as minhas corridas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-206170557007814442?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/206170557007814442/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=206170557007814442' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/206170557007814442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/206170557007814442'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/12/i-corrida-venceremos-corrupcao-2010.html' title='I Corrida Venceremos a Corrupcao - 2010 » Corrida 10km'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-7113291814619882789</id><published>2010-12-05T13:24:00.000-08:00</published><updated>2010-12-05T13:26:57.860-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>Circuito Verão Adidas BRASILIA</title><content type='html'>Número de Peito: 3158&lt;div&gt;Tempo Final:  00:59:35 &lt;/div&gt;&lt;div&gt; Categoria: M4044 &lt;/div&gt;&lt;div&gt; Modalidade: 10k &lt;/div&gt;&lt;div&gt; Tempo  Controle 00:22:12.01 &lt;/div&gt;&lt;div&gt; Tempo  Bruto 01:01:00.02 &lt;/div&gt;&lt;div&gt; Classificação  Total 704 &lt;/div&gt;&lt;div&gt; Classificação  por Categoria 108 &lt;/div&gt;&lt;div&gt; Classificação  por Sexo 605 &lt;/div&gt;&lt;div&gt; Pace  Médio 00:05:57 &lt;/div&gt;&lt;div&gt; Velocidade Média Total 10,0 &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A corrida ocorreu na esplanada dos Ministérios em um dia que começou chovendo e o clima estava agradável para correr.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Foi a minha primeira corrida que fiz 10km em menos de 1h.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-7113291814619882789?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/7113291814619882789/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=7113291814619882789' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7113291814619882789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7113291814619882789'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/12/circuito-verao-adidas-brasilia.html' title='Circuito Verão Adidas BRASILIA'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5360849031943438360</id><published>2010-11-28T06:49:00.000-08:00</published><updated>2010-12-05T13:30:09.887-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>Circuito de Corrida Caixa Etapa Brasilia</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_d-oepSUcka8/TPwETd-6iOI/AAAAAAAACXM/0oDcBd86zZ0/s1600/Cax10MA0982.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 199px; height: 300px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/TPwETd-6iOI/AAAAAAAACXM/0oDcBd86zZ0/s320/Cax10MA0982.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5547313573526145250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_d-oepSUcka8/TPwEMfx52kI/AAAAAAAACXE/ZfOQLBAPTOI/s1600/Cax10AF0935.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 200px; height: 299px;" src="http://1.bp.blogspot.com/_d-oepSUcka8/TPwEMfx52kI/AAAAAAAACXE/ZfOQLBAPTOI/s320/Cax10AF0935.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5547313453749361218" /&gt;&lt;/a&gt;&lt;br /&gt;No dia 28 de novembro corri o circuito da Caixa em Brasília na Esplanda dos Ministérios. O clima estava muito quente. Fiz o tempo de 1h03min43 seg.&lt;br /&gt;&lt;br /&gt;&lt;table id="tabela" width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="center" height="50"&gt;&lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="80" align="left"&gt;&lt;b&gt;NÚMERO&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="127" align="left"&gt;&lt;span id="dtv_lblNumero"&gt;600&lt;/span&gt;&lt;/td&gt;                                     &lt;td width="59" align="left"&gt;&lt;b&gt;NOME&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="270" align="left"&gt;&lt;span id="dtv_lblNome"&gt;CAIO NAKASHIMA&lt;/span&gt;&lt;/td&gt;                                     &lt;td width="55" align="left"&gt;&lt;b&gt;SEXO&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="109" align="left"&gt;&lt;span id="dtv_lblSexo"&gt;M&lt;/span&gt;&lt;/td&gt;                                   &lt;/tr&gt;                              &lt;/tbody&gt;&lt;/table&gt;                                 &lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;                                   &lt;tbody&gt;&lt;tr&gt;                                     &lt;td width="70" align="left"&gt;&lt;b&gt;EQUIPE&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="222" align="left"&gt;&lt;span id="dtv_lblEquipe"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt;                                     &lt;td width="95" align="left"&gt;&lt;b&gt;DISTÂNCIA&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="150" align="left"&gt;&lt;span id="dtv_Label17"&gt;10 Km&lt;/span&gt;&lt;/td&gt;                                     &lt;td width="105" align="left"&gt;&lt;b&gt;CATEGORIA&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="58" align="left"&gt;&lt;span id="dtv_lblCategoria"&gt;M4044&lt;/span&gt;&lt;/td&gt;                                   &lt;/tr&gt;                              &lt;/tbody&gt;&lt;/table&gt;                                 &lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="tahoma-bold-14-006BB6" align="center" height="18px"&gt;CLASSIFICAÇÃO GERAL (Tempo Bruto)&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td align="center" height="50"&gt;                                 &lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;                                   &lt;tbody&gt;&lt;tr&gt;                                     &lt;td align="center"&gt;&lt;b&gt;TEMPO BRUTO&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;RITMO&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;CLASSIFICAÇÃO/CATEGORIA&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;CLASSIFICAÇÃO/SEXO&lt;/b&gt;&lt;/td&gt;                                   &lt;/tr&gt;                                   &lt;tr&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblTempoChegadaTC"&gt;01:04:05&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblRitmoTC"&gt;06:24&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblClassifFaixaEtariaTC"&gt;71&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblClassifSexoTC"&gt;409&lt;/span&gt;&lt;/td&gt;                                   &lt;/tr&gt;                              &lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="tahoma-bold-14-006BB6" align="center" height="18px"&gt;CLASSIFICAÇÃO CATEGORIA (Tempo Líquido)&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td align="center" height="50"&gt;&lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;                                   &lt;tbody&gt;&lt;tr&gt;                                     &lt;td align="center"&gt;&lt;b&gt;TEMPO LÍQUIDO&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;RITMO&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;CLASSIFICAÇÃO/CATEGORIA&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;CLASSIFICAÇÃO/SEXO&lt;/b&gt;&lt;/td&gt;                                   &lt;/tr&gt;                                   &lt;tr&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblTempoLiquidoTL"&gt;01:03:43&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblRitmoTL"&gt;06:22&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_ClassifFaixaEtariaTL"&gt;74&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_ClassifSexoTL"&gt;433&lt;/span&gt;&lt;/td&gt;                                   &lt;/tr&gt;                              &lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr style="display: none;"&gt;                                 &lt;td class="tahoma-bold-14-006BB6" align="center" height="18px"&gt;CLASSIFICAÇÃO ECONOMIÁRIO&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr style="display: none;"&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr style="display: none;"&gt;                                 &lt;td align="center" height="50"&gt;&lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;                                   &lt;tbody&gt;&lt;tr&gt;                                     &lt;td align="center"&gt;&lt;b&gt;TEMPO BRUTO&lt;/b&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;b&gt;TEMPO LÍQUIDO&lt;/b&gt;&lt;/td&gt;                                                                        &lt;/tr&gt;                                   &lt;tr&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblClassifSubCategTC"&gt;&lt;/span&gt;&lt;/td&gt;                                     &lt;td align="center"&gt;&lt;span id="dtv_lblClassifSubCategTL"&gt;&lt;/span&gt;&lt;/td&gt;                                                                        &lt;/tr&gt;                              &lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr style="display: none;"&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="tahoma-bold-14-006BB6" align="center" height="18px"&gt;OUTRAS INFORMAÇÕES&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td class="linha" height="1px"&gt;&lt;br /&gt;&lt;/td&gt;                               &lt;/tr&gt;                               &lt;tr&gt;                                 &lt;td align="center" height="30"&gt;&lt;table class="tahoma-regular-11-006BB6" width="700" border="0" cellpadding="0" cellspacing="0"&gt;                                   &lt;tbody&gt;&lt;tr&gt;                                     &lt;td width="205" align="left"&gt;&lt;b&gt;IDADE  DO PARTICIPANTE&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="75" align="left"&gt;&lt;span id="dtv_Label15"&gt;43&lt;/span&gt;&lt;/td&gt;                                     &lt;td width="130" align="left"&gt;&lt;b&gt;DATA  DA ETAPA&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="94" align="left"&gt;&lt;span id="dtv_DataEvento"&gt;28/11/2010&lt;/span&gt;&lt;/td&gt;                                     &lt;td width="175" align="left"&gt;&lt;b&gt;NÚMERO  DE VOLTAS&lt;/b&gt;&lt;/td&gt;                                     &lt;td width="21" align="left"&gt;&lt;span id="dtv_Label19"&gt;1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5360849031943438360?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5360849031943438360/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5360849031943438360' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5360849031943438360'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5360849031943438360'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/11/circuito-de-corrida-caixa-etapa.html' title='Circuito de Corrida Caixa Etapa Brasilia'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_d-oepSUcka8/TPwETd-6iOI/AAAAAAAACXM/0oDcBd86zZ0/s72-c/Cax10MA0982.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5261502557876289610</id><published>2010-11-23T12:56:00.000-08:00</published><updated>2010-11-24T04:32:50.857-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostGis'/><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Comandos SQL utilizados</title><content type='html'>-- Número para ser utilizado na tabela com próximo identificador.&lt;br /&gt;select max(id_mapa)+1 from mapas.map_description&lt;br /&gt;&lt;br /&gt;-- Inserir a descricao&lt;br /&gt;insert into mapas.map_description (&lt;br /&gt;   id_mapa ,&lt;br /&gt;   titulo ,&lt;br /&gt;   tipo_conexao ,&lt;br /&gt;   conexao_usuario ,&lt;br /&gt;   conexao_senha ,&lt;br /&gt;   conexao_dbname,&lt;br /&gt;   conexao_host ,&lt;br /&gt;   conexao_port ,&lt;br /&gt;   sql ,&lt;br /&gt;   publicado,&lt;br /&gt;   fonte ,&lt;br /&gt;   fundored ,&lt;br /&gt;   fundogreen,&lt;br /&gt;   fundoblue)&lt;br /&gt;(&lt;br /&gt;   select ###,&lt;br /&gt;   titulo ,&lt;br /&gt;   tipo_conexao ,&lt;br /&gt;   conexao_usuario ,&lt;br /&gt;   conexao_senha ,&lt;br /&gt;   conexao_dbname,&lt;br /&gt;   conexao_host ,&lt;br /&gt;   conexao_port ,&lt;br /&gt;   sql ,&lt;br /&gt;   publicado,&lt;br /&gt;   fonte ,&lt;br /&gt;   fundored ,&lt;br /&gt;   fundogreen,&lt;br /&gt;   fundoblue&lt;br /&gt;   from  mapas.map_description&lt;br /&gt;   where id_mapa =##)&lt;br /&gt;&lt;br /&gt;-- inserir detalhe&lt;br /&gt;insert into mapas.map_detail (&lt;br /&gt;   id_mapa,&lt;br /&gt;   ordem ,&lt;br /&gt;   nome_camada,&lt;br /&gt;   tipo_conexao ,&lt;br /&gt;   conexao_usuario,&lt;br /&gt;   conexao_senha ,&lt;br /&gt;   conexao_dbname,&lt;br /&gt;   conexao_host,&lt;br /&gt;   conexao_port,&lt;br /&gt;   sql,&lt;br /&gt;   tipo_mapa,&lt;br /&gt;   projecao ,&lt;br /&gt;   color_red ,&lt;br /&gt;   color_green,&lt;br /&gt;   color_blue ,&lt;br /&gt;   outline_red ,&lt;br /&gt;   outline_green,&lt;br /&gt;   outline_blue ,&lt;br /&gt;   symbol ,&lt;br /&gt;   symbolsize,&lt;br /&gt;   labelitem,&lt;br /&gt;   lablefont,&lt;br /&gt;   labelsize,&lt;br /&gt;   checked,&lt;br /&gt;   show,&lt;br /&gt;   sql_qtde,&lt;br /&gt;   qtde_unidade)&lt;br /&gt;   (select&lt;br /&gt;   ###,&lt;br /&gt;   ordem ,&lt;br /&gt;   nome_camada,&lt;br /&gt;   tipo_conexao ,&lt;br /&gt;   conexao_usuario,&lt;br /&gt;   conexao_senha ,&lt;br /&gt;   conexao_dbname,&lt;br /&gt;   conexao_host,&lt;br /&gt;   conexao_port,&lt;br /&gt;   sql,&lt;br /&gt;   tipo_mapa,&lt;br /&gt;   projecao ,&lt;br /&gt;   color_red ,&lt;br /&gt;   color_green,&lt;br /&gt;   color_blue ,&lt;br /&gt;   outline_red ,&lt;br /&gt;   outline_green,&lt;br /&gt;   outline_blue ,&lt;br /&gt;   symbol ,&lt;br /&gt;   symbolsize,&lt;br /&gt;   labelitem,&lt;br /&gt;   lablefont,&lt;br /&gt;   labelsize,&lt;br /&gt;   checked,&lt;br /&gt;   show,&lt;br /&gt;   sql_qtde,&lt;br /&gt;   qtde_unidade&lt;br /&gt;   from  mapas.map_detail&lt;br /&gt;   where id_mapa=##)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5261502557876289610?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5261502557876289610/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5261502557876289610' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5261502557876289610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5261502557876289610'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/11/comandos-sql-utilizados.html' title='Comandos SQL utilizados'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4986151067122167073</id><published>2010-10-24T07:09:00.000-07:00</published><updated>2010-10-24T07:12:00.219-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>10 Milhas Mizuno Brasilia</title><content type='html'>Hoje fiz 5 milhas Mizuno, cerca de 8 km no eixo rodoviario Sul em 47 min e 27 seg. A equipe fez as 10 milhas em 1h40m37s.&lt;br /&gt;&lt;br /&gt;A corrida começou as 8h00 ou seja 7h00 no horário normal. Foi muito bom correr de manhã sem muito calor.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4986151067122167073?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4986151067122167073/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4986151067122167073' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4986151067122167073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4986151067122167073'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/10/10-milhas-mizuno-brasilia.html' title='10 Milhas Mizuno Brasilia'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6008629775310379194</id><published>2010-10-16T10:28:00.000-07:00</published><updated>2010-10-16T11:02:53.952-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Interoperabilidade'/><title type='text'>Tipos de Federalismo</title><content type='html'>&lt;ol&gt;&lt;li&gt;O &lt;span style="font-weight: bold;"&gt;Federalismo Progressivo&lt;/span&gt;, que busca centralizar o poder sobre um estado, resultante da união de diversos estados membros. Exemplos: Estados Unidos da América e União Europeia.&lt;/li&gt;&lt;li&gt;O &lt;span style="font-weight: bold;"&gt;Federalismo Pragmático&lt;/span&gt;, que busca descentralizar o poder de um determinado estado em estados menores. Exemplos: Alemanha, Argentina e Brasil.&lt;/li&gt;&lt;li&gt;O &lt;span style="font-weight: bold;"&gt;Federalismo Defensivo&lt;/span&gt;, que é uma tentativa de manter a unidade em estados ameaçados de desintegração. Exemplos: Canadá, Espanha.&lt;/li&gt;&lt;/ol&gt;Como características marcantes do federalismo:&lt;br /&gt;&lt;ul&gt;&lt;li&gt; Uma Constituição rígida que garante a repartição de competências entre os entes autônomos.&lt;/li&gt;&lt;li&gt; Um órgão guardião da Constituição Federal.&lt;/li&gt;&lt;li&gt; A descentralização política por meio do estabelecimento de núcleos de poder político.&lt;/li&gt;&lt;li&gt; A consagração do princípio da indissolubilidade do vínculo federativo.&lt;/li&gt;&lt;li&gt; A soberania do Estado Federal cedida pelo ingresso dos entes federativos na Federação.&lt;/li&gt;&lt;/ul&gt;As competências dos entes federados podem ser administrativas, legislativas e tributárias.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;As &lt;span style="font-weight: bold;"&gt;competências administrativas&lt;/span&gt; estão relacionadas à capacidade de atuação efetiva para executar tarefas administrativas (atividades-meio) com vistas à realização das atividades estabelecidas em lei (atividades-fim).&lt;/li&gt;&lt;li&gt;As &lt;span style="font-weight: bold;"&gt;competências legislativas&lt;/span&gt; estabelecem o poder para a criação de normas de controle dos relacionamentos e do funcionamento administrativo. &lt;/li&gt;&lt;li&gt;As &lt;span style="font-weight: bold;"&gt;competências tributárias&lt;/span&gt; estão relacionadas à capacidade de instituir e arrecadar impostos, de modo a assegurar a autonomia financeira de cada ente federado.&lt;/li&gt;&lt;/ul&gt;Os impostos cujos recursos seriam distribuídos seriam o &lt;span style="font-weight: bold;"&gt;IR&lt;/span&gt; (Imposto sobre a Renda e Proventos de Qualquer Natureza) e o&lt;span style="font-weight: bold;"&gt; IPI &lt;/span&gt;(Imposto sobre Produtos Industrializados).&lt;br /&gt;Este mecanismo de equilíbrio fiscal é denominado de&lt;span style="font-weight: bold;"&gt; Fundo de Participação dos Estados&lt;/span&gt; (FPE) e &lt;span style="font-weight: bold;"&gt;Fundo de Participação dos Municípios&lt;/span&gt; (FPM).&lt;br /&gt;A CF de 1988 definiu que&lt;span style="font-weight: bold;"&gt; 21,5% das transferências são destinadas aos Estados&lt;/span&gt;, “sendo que &lt;span style="font-weight: bold;"&gt;85% são destinados às regiões Norte, Nordeste e Centro-Oeste&lt;/span&gt; e os restantes &lt;span style="font-weight: bold;"&gt;15%, às regiões Sul e Sudeste.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A equação de cálculo dos valores a serem distribuídos considera o tamanho da população de forma direta, e a renda per capta de forma inversa, ou seja, maiores níveis de renda representam menores percentuais de recursos a serem recebidos.&lt;br /&gt;&lt;br /&gt;A &lt;span style="font-weight: bold;"&gt;descentralização geográfica&lt;/span&gt; acontece quando a capacidade administrativa é transferida para entidades locais, que passam a ter personalidade jurídica própria.&lt;br /&gt;A &lt;span style="font-weight: bold;"&gt;descentralização técnica ou funcional&lt;/span&gt; acontece quando “o poder público (União,  Estados ou Municípios) cria uma pessoa de direito público ou privado e a ela atribui a titularidade da execução de determinado serviço público”&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;A despeito de quem executa, o serviço continua público&lt;/span&gt;, e o poder público tem o dever de zelar pela sua prestação de modo a atender às necessidades da população.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Regulamentar&lt;/span&gt; significa criar e desenvolver regras de coexistência.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Regulamentação&lt;/span&gt; está relacionada com a questão institucional, regulação está mais afeita à condução do processo e à manutenção da ordem estabelecida.&lt;br /&gt;&lt;br /&gt;Segundo Bresser-Pereira (2003), a publicização de organizações públicas visa manter o caráter&lt;br /&gt;público e o financiamento das organizações do serviço público, mas transferindo a gestão destas para a iniciativa privada.&lt;br /&gt;&lt;br /&gt;A ideia da publicização torna-se concreta com a &lt;span style="font-weight: bold;"&gt;Lei n. 9.637, de 15 de maio de 1998&lt;/span&gt; que regulamentava a forma de criação das organizações sociais e criava o &lt;span style="font-weight: bold;"&gt;Plano Nacional de Publicização (PNP).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Lei do Terceiro Setor, que dispunha sobre a qualificação de pessoas jurídicas de direito privado e sem fins lucrativos para atuarem como Organizações da Sociedade Civil de Interesse Público (OSCIP)&lt;br /&gt;&lt;br /&gt;Segundo Anheier (2005), existem três setores de atuação na sociedade:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;o primeiro setor representado pelo governo e suas agências;&lt;/li&gt;&lt;li&gt;o segundo setor com todas as organizações que visam lucro ;&lt;/li&gt;&lt;li&gt;o terceiro setor que seriam aquelas organizações que se aproximam do primeiro e do segundo setor. Este setor é genericamente denominado de setor não lucrativo. Neste setor, estariam as organizações de caridade, sociedade civil, filantrópicas, voluntárias, capital social, entre outras&lt;/li&gt;&lt;/ul&gt;Apesar de muito parecidas na forma e na finalidade, OSCIPs são diferentes de ONGs. Ambas são organizações do terceiro setor e ambas são organizações que não visam lucro. Entretanto, em função da legislação em vigor, as OSCIPs são fiscalizadas diretamente pelo Poder Público e pelo TCU se for o caso e precisam ter seu estatuto aprovado pelo Ministério da Justiça.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6008629775310379194?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6008629775310379194/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6008629775310379194' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6008629775310379194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6008629775310379194'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/10/tipos-de-federalismo.html' title='Tipos de Federalismo'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4348294918527882128</id><published>2010-09-13T05:34:00.000-07:00</published><updated>2010-11-28T06:53:07.393-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>Circuito das Estações Adidas Primavera</title><content type='html'>Número: 3753&lt;br /&gt;Tempo Final: 1h 1 min 25 seg&lt;br /&gt;Tempo de Controle 28 min 14 seg&lt;br /&gt;Classificação Total 978 / 1306&lt;br /&gt;Classificação Categoria 169 / 195&lt;br /&gt;Classificação Sexo 816&lt;br /&gt;Pace Médio:  6min 8seg / Km&lt;br /&gt;Velocidade Média 7,76 km/h&lt;br /&gt;Data da Corrida: 12/10/2010&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4348294918527882128?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4348294918527882128/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4348294918527882128' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4348294918527882128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4348294918527882128'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/09/circuito-das-estacoes-adidas-primavera.html' title='Circuito das Estações Adidas Primavera'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4057686519697064572</id><published>2010-09-02T05:30:00.001-07:00</published><updated>2010-09-02T05:36:32.875-07:00</updated><title type='text'>Conexão COM MDB</title><content type='html'>&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;&amp;lt;?php&lt;br /&gt;&lt;br /&gt;$pathDb&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;=&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;realpath&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"Dados.mdb"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$cx &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= new &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;COM&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"ADODB.Connection"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$cx&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;open&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$pathDb"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= new &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;COM&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"ADODB.RecordSet"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;open&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"select * from tabela"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$cx&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;3&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;,&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;3&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$total &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;recordcount&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$num &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;1&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;echo &lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"Total de registros: $total&lt;br /&gt;"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;while (!&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;eof&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;) {&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$info &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;fields&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;(&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"campo"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;);&lt;br /&gt;echo &lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;"$info&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(221, 0, 0);"&gt;value&lt;br /&gt;"&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;movenext&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;();&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;close&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$cx&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;-&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;close&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$rs &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;null&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;$cx &lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;= &lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;null&lt;/span&gt;&lt;span style="color: rgb(0, 119, 0);"&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 187);"&gt;?&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4057686519697064572?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4057686519697064572/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4057686519697064572' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4057686519697064572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4057686519697064572'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/09/conexao-com-mdb.html' title='Conexão COM MDB'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6259126698900270626</id><published>2010-08-02T05:25:00.000-07:00</published><updated>2010-11-30T01:06:41.648-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Corridas'/><title type='text'>3ª Maratona Pão de Açúcar de Revezamento em Brasília</title><content type='html'>Percurso:&lt;br /&gt;&lt;br /&gt;http://www.maratonapaodeacucar.com.br/brasilia/percurso_brasilia.htm&lt;br /&gt;&lt;br /&gt;Data:01/08/2010&lt;br /&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;        &lt;table width="587" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="left"&gt;Atleta&lt;/div&gt;&lt;/td&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="left"&gt;Sexo&lt;/div&gt;&lt;/td&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="left"&gt;Número&lt;/div&gt;&lt;/td&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="left"&gt;Categoria&lt;/div&gt;&lt;/td&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="left"&gt;Tempo Final&lt;/div&gt;&lt;/td&gt;     &lt;td&gt;&lt;div class="texto_formulario_dest" align="center"&gt;Fotos/Vídeo&lt;/div&gt;&lt;/td&gt;   &lt;/tr&gt;   &lt;tr&gt;     &lt;td colspan="6" class="style4"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;   &lt;/tr&gt; &lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682306)"&gt;JOSÉ B. ESTRELA JÚNIOR&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;M&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682307)"&gt;CAIO NAKASHIMA&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;M&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682308)"&gt;ROSELIZA AICO NAKASHIMA HONDA&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;F&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682309)"&gt;ALEXANDRE&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;M&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682310)"&gt;LUIS GUSTAVO DE AQUINO CARVALHO CARVALHO&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;M&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682311)"&gt;MARILDETE FERREIRA DE FREITAS&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;F&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682312)"&gt;RENATA FILGUEIRA COSTA&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;F&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;td align="center"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="6"&gt;&lt;img src="http://www.championchipbrasil.com.br/imgs/27.jpg" width="587" height="11" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;&lt;a href="javascript:ver_resultado(3682313)"&gt;JOSÉ LEÃO DE MELO JÚNIOR&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;M&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;228&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;8MAS&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;div class="texto_formulario" align="left"&gt;04:27:00.60&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6259126698900270626?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6259126698900270626/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6259126698900270626' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6259126698900270626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6259126698900270626'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/08/3-maratona-pao-de-acucar-de-revezamento.html' title='3ª Maratona Pão de Açúcar de Revezamento em Brasília'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5236232019666280868</id><published>2010-08-02T05:09:00.000-07:00</published><updated>2010-08-02T05:22:05.098-07:00</updated><title type='text'>II corrida da telemática</title><content type='html'>Depois de uma longa parada, fiz a corrida II corrida da telemática, http://www.corridatelematica.net/www/idx-main.php?idp=0, no dia 13 de maio de 2010.&lt;br /&gt;&lt;br /&gt;Foi uma corrida muito difícil para mim. O percurso é maravilhoso, calmo, porém com a falta de treino fiz o tempo de 50 min 14 segundos (Posição 98 entre os homens)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5236232019666280868?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5236232019666280868/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5236232019666280868' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5236232019666280868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5236232019666280868'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/08/ii-corrida-da-telematica.html' title='II corrida da telemática'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5264786580717624034</id><published>2010-07-05T10:16:00.000-07:00</published><updated>2010-07-05T10:17:02.753-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='utf8'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Converter arquivo para UTF8</title><content type='html'>iconv -c -f &lt;origem&gt; -t UTF-8 &lt;arquivo&gt;&lt;br /&gt;&lt;br /&gt;Exemplo:&lt;br /&gt;&lt;br /&gt;iconv -c -f ISO-8859-1 -t UTF-8 index.php&lt;/arquivo&gt;&lt;/origem&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5264786580717624034?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5264786580717624034/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5264786580717624034' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5264786580717624034'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5264786580717624034'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/07/converter-arquivo-para-utf8.html' title='Converter arquivo para UTF8'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5330907228844512238</id><published>2010-05-28T05:10:00.001-07:00</published><updated>2010-05-28T05:11:32.187-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>XML to Array PHP</title><content type='html'>Contribuição de Ricardo Feitosa (Transforma um XML para array)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function xml2array($xml)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$xmlary = array();&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$reels = '/&lt;(\w+)\s*([^\/&gt;]*)\s*(?:\/&gt;|&gt;(.*)&lt;\/\s*\\1\s*&gt;)/s';&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$reattrs = '/(\w+)=(?:"|\')([^"\']*)(:?"|\')/';&lt;/div&gt;&lt;div&gt;        preg_match_all($reels, $xml, $elements);&lt;/div&gt;&lt;div&gt;        if (is_array($elements))&lt;/div&gt;&lt;div&gt;        {&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        foreach ($elements[1] as $ie =&gt; $xx)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        {&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;$cdend = strpos($elements[3][$ie], "&lt;");&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;if ($cdend &gt; 0)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;$xmlary[$elements[1][$ie]] = substr($elements[3][$ie], 0, $cdend - 1);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;}&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;if (preg_match($reels, $elements[3][$ie]))&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;$xmlary[$elements[1][$ie]] = xml2array($elements[3][$ie]);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;else &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;if ($elements[3][$ie])&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;      &lt;/span&gt;$xmlary[$elements[1][$ie]] = $elements[3][$ie];&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;}&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;}&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;return $xmlary;&lt;/div&gt;&lt;div&gt;        }&lt;/div&gt;&lt;div&gt;       &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return $xml;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function xml2get($id,$xml)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;{&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$parametros = xml2array($xml);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;$resultado = "";&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;foreach ($parametros[$id] as $key =&gt; $value)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;$resultado.= "$key=".urlencode($value)."&amp;amp;";&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;if (substr($resultado,-1) == "&amp;amp;")&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;return substr($resultado,0,-1);&lt;/div&gt;&lt;div&gt;       &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return false;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;}&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5330907228844512238?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5330907228844512238/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5330907228844512238' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5330907228844512238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5330907228844512238'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/05/xml-to-array-php.html' title='XML to Array PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3209389378914537239</id><published>2010-05-27T10:41:00.000-07:00</published><updated>2010-06-16T16:46:00.753-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><title type='text'>GET passando por um proxy</title><content type='html'>&lt;div link="blue" vlink="purple" lang="PT-BR"&gt; &lt;div class="x_Section1"&gt; &lt;p class="x_MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:100%;"  &gt;Com o código abaixo eu  consigo fazer uma requisição GET passando por um proxy. Com stream  context fica bem mais simples que montar a string no formato do HTTP.&lt;/span&gt;&lt;/p&gt; &lt;p class="x_MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12pt;"  &gt; &lt;/span&gt;&lt;/p&gt; &lt;p class="x_MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10pt;"  &gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="x_MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10pt;"  &gt;&lt;span style=";font-family:courier new;font-size:100%;"  &gt;&lt;?php&lt;br /&gt;$proxyUser="usuario";&lt;br /&gt;$proxyPasswd = "senha";&lt;br /&gt;$authProxy = base64_encode($proxyUser . ":" . $proxyPasswd);&lt;br /&gt;// Création des options de la requête&lt;br /&gt;$opts = array(&lt;br /&gt;'http' =&gt; array (&lt;br /&gt;'method'=&gt;'GET',&lt;br /&gt;'proxy'=&gt;'tcp://endereco:porta',&lt;br /&gt;'request_fulluri' =&gt; true,&lt;br /&gt;'header'=&gt;"Proxy-Authorization: Basic $authProxy"&lt;br /&gt;)&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;// Création du contexte de transaction&lt;br /&gt;$context  = stream_context_create($opts);&lt;br /&gt;// Récupération des données&lt;br /&gt;$data = file_get_contents('http://www.google.com', false, $context);&lt;br /&gt;&lt;br /&gt;echo $data;&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="x_MsoNormal"&gt; Contribuição de Carlos Eduardo de Andrade Brasileiro&lt;br /&gt;&lt;/p&gt; &lt;/div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3209389378914537239?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3209389378914537239/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3209389378914537239' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3209389378914537239'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3209389378914537239'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/05/get-passando-por-um-proxy.html' title='GET passando por um proxy'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2376484285657047498</id><published>2010-03-22T06:48:00.000-07:00</published><updated>2010-03-22T06:49:06.579-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Converter arquivo para UTF8</title><content type='html'>iconv --from-code=ISO-8859-1 --to-code=UTF-8 ./oldfile.htm &gt; ./newfile.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2376484285657047498?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2376484285657047498/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2376484285657047498' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2376484285657047498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2376484285657047498'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/03/converter-arquivo-para-utf8.html' title='Converter arquivo para UTF8'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-7719315507819472473</id><published>2010-02-18T07:54:00.000-08:00</published><updated>2010-02-18T07:56:23.855-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>DBlink</title><content type='html'>Link com exemplos da utilização do DBlink&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pt.wikibooks.org/wiki/PostgreSQL_Pr%C3%A1tico/Replica%C3%A7%C3%A3o"&gt;http://pt.wikibooks.org/wiki/PostgreSQL_Prático/Replicação&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-7719315507819472473?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/7719315507819472473/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=7719315507819472473' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7719315507819472473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7719315507819472473'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/02/dblink.html' title='DBlink'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5264877432812951645</id><published>2010-01-13T02:26:00.000-08:00</published><updated>2010-01-13T02:30:58.370-08:00</updated><title type='text'>Alguns comandos (sql) Postgis</title><content type='html'>&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;meu_DB=# SELECT gid, AsText(the_geom) AS the_geom, name FROM bc_roads;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;gid | the_geom | name&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;-----+---------------------------------------------------------------------------------------+-------------&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;1 | MULTILINESTRING((1205902.3 460882.2,1205906.3 460789.7)) | No 1 Rd&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;2 | MULTILINESTRING((1205906.3 460789.7,1205907.3 460776.4)) | No 1 Rd&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;3 | MULTILINESTRING((1205907.3 460776.4,1205913.6 460638.8)) | No 1 Rd&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;4 | MULTILINESTRING((1205913.6 460638.8,1205919.6 460513.4)) | No 1 Rd&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;5 | MULTILINESTRING((1205919.6 460513.4,1205920.8 460482)) | No 1 Rd&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;6 | MULTILINESTRING((1211706.8 462048.2,1211710.3 461877)) | Seaham Cres&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;7 | MULTILINESTRING((1212105 462099.5,1212160.1 462102.5)) | Seahaven Pl&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;(7 registros)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;Porém, haverá momentos em que restrições serão necessárias para reduzir o número de campos retornados. No caso de restrições baseadas em atributos, apenas use a mesma sintaxe normal de SQL com uma tabela não espacial. No caso de restrições espaciais, os operadores seguintes são disponíveis/úteis:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;&amp;amp;&amp;amp;&lt;/span&gt; Este operador diz se o retângulo envolvente (bounding box) de uma geometria intersecta o retângulo envolvente de outra.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;~=&lt;/span&gt; Estes operadores testam se duas geometrias são geometricamente idênticas. Por exemplo, se "POLYGON((0 0,1 1,1 0,0 0))" é igual à "POLYGON((0 0,1 1,1 0,0 0))" (nesse caso é!).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;=&lt;/span&gt; Este operador é um pouco mais "ingênuo", e só testa se o retângulo envolvente (bounding box) das geometrias é o mesmo.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;Logo, você pode usar estes operadores em consultas. Note que ao especificar geometrias e retângulos na linha de comando SQL, você tem que transformar as representações de caracteres (string) explicitamente em geometrias usando a função "GeometryFromText () ". Por exemplo:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;SELECT name FROM bc_roads&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;WHERE the_geom ~= GeomFromText('MULTILINESTRING((1212105 462099.5,1212160.1 462102.5))',-1);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;A consulta anterior devolveria o único registro da tabela "bc_roads" no qual a geometria era igual aquele valor.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;Ao usar o operador "&amp;amp;&amp;amp; ", você pode especificar tanto um retângulo (BOX3D) como característica de comparação como uma geometria. Quando você especifica uma geometria é o seu retângulo envolvente (bounding box) que será usado para a comparação.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;SELECT name FROM bc_roads&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;WHERE the_geom &amp;amp;&amp;amp; GeomFromText('POLYGON((1212105 462099.5,1212160.1 462102.5, 1212105 462099.5))',-1);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;Então, a consulta anterior usará o retângulo envolvente do polígono para propósitos de comparação.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;A consulta espacial mais comum provavelmente será uma consulta "frame-based", usada por um software cliente, como um visualizador de dados ou servidor de mapas na web, é obter o "map-frame" (representação gráfica - figura) para exibição. Usando um objeto "BOX3D" para o "frame", essa consulta iria ser como demonstrado abaixo:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;SELECT AsText(the_geom) AS the_geom&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;FROM bc_roads&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;&lt;span style="font-weight: bold;"&gt;WHERE the_geom &amp;amp;&amp;amp; SetSRID('BOX3D(1212105 462099.5,1212160.1 462102.5)'::box3d,-1);&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:arial,helvetica,sans-serif;font-size:100%;"  &gt;Note que o uso do SRID, especifica a projeção do BOX3D. O valor -1 é usado para indicar que nenhum SRID é especificado.&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;input name="id" value="21330" type="hidden"&gt; &lt;input name="pageid" value="20154" type="hidden"&gt; &lt;div class="lessonbutton standardbutton" style="text-align: center;"&gt; &lt;/div&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5264877432812951645?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5264877432812951645/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5264877432812951645' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5264877432812951645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5264877432812951645'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/01/alguns-comandos-sql-postgis.html' title='Alguns comandos (sql) Postgis'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6581654096196365375</id><published>2010-01-02T10:37:00.000-08:00</published><updated>2010-01-02T10:42:20.451-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Moodle'/><category scheme='http://www.blogger.com/atom/ns#' term='Educação Corporativa'/><title type='text'></title><content type='html'>&lt;div&gt;Alguns artigos interessantes sobre  educação:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.naccq.ac.nz/conference05/proceedings_05/concise/bremer_moodle.pdf"&gt;A Comparison of Two Learning management Systems: Moodle vs Blackboard &lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://opensource.org/docs/definition.php"&gt;Definição de código aberto&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://www.dicas-l.com.br/download/Aprendendo-a-Aprender.pdf"&gt;Coletânea de artigos de Rubens Queiroz de Almeida sobre educação&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://download.moodle.org/download.php/docs/en/using_moodle_2e.zip"&gt;Livro sobre Moodle&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6581654096196365375?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6581654096196365375/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6581654096196365375' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6581654096196365375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6581654096196365375'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2010/01/alguns-artigos-interessantes-sobre.html' title=''/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3272499970545944466</id><published>2009-12-31T11:58:00.000-08:00</published><updated>2009-12-31T12:10:54.639-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Matriz Lógica'/><category scheme='http://www.blogger.com/atom/ns#' term='Avaliação'/><title type='text'>Matriz Lógica</title><content type='html'>&lt;div&gt;Os projetos são impulsionados por uma lógica relativamente linear: os insumos levam a atividades, que levam a produtos que levam a resultados a qual leva a avaliação (metas).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Insumos -&gt; Atividades -&gt; Produtos -&gt; Resultados -&gt; Metas&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;Fonte: &lt;a href="http://books.google.com.br/books?id=r811cKZtHEwC&amp;amp;pg=PA181&amp;amp;dq=marco+logico&amp;amp;lr=&amp;amp;as_brr=1&amp;amp;cd=12#v=onepage&amp;amp;q=&amp;amp;f=false"&gt;Evaluación organizacional: marco para mejorar el desempeño  Por Charles Lusthaus&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3272499970545944466?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3272499970545944466/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3272499970545944466' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3272499970545944466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3272499970545944466'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/12/matriz-logica.html' title='Matriz Lógica'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6446193962277415366</id><published>2009-11-18T02:58:00.001-08:00</published><updated>2009-11-18T02:58:58.903-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Suse'/><title type='text'>Configuração do teclado SUSE</title><content type='html'>setxkbmap -model abnt2 -layout br,br&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6446193962277415366?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6446193962277415366/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6446193962277415366' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6446193962277415366'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6446193962277415366'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/11/configuracao-do-teclado-suse.html' title='Configuração do teclado SUSE'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2910215696634556839</id><published>2009-11-10T04:18:00.001-08:00</published><updated>2009-11-10T04:19:59.627-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Regular Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Verificar se o conteúdo de um  campo postgresql é numérico</title><content type='html'>O meu problema é verificar se o conteúdo de um campo texto (resposta) é numérico.&lt;br /&gt;&lt;br /&gt;select pergunta, resposta&lt;br /&gt;from  dados.itemquest&lt;br /&gt;where (resposta ~ '^[0-9.-]+$');&lt;br /&gt;&lt;br /&gt;A expressão:&lt;br /&gt;&lt;br /&gt;where (resposta ~ '^[0-9.-]+$');&lt;br /&gt;&lt;br /&gt;retorna true para conteúdo numérico.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2910215696634556839?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2910215696634556839/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2910215696634556839' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2910215696634556839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2910215696634556839'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/11/verificar-se-o-conteudo-de-um-campo.html' title='Verificar se o conteúdo de um  campo postgresql é numérico'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5906319522570367522</id><published>2009-11-04T14:03:00.000-08:00</published><updated>2009-11-04T14:08:35.695-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Backup banco postgres</title><content type='html'>&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family:arial;"&gt;O script abaixo serve para fazer o backup de um banco Postgres inserindo a data e hora da tarefa no nome do arquivo&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;# Determinado da data e hora e ano&lt;br /&gt;ano=`date +%Y`;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;mes=`date +%m`;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;hora=`date +%H`;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;min=`date +%M`;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;let dia=10\#`date +%d`;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;#hora = 'date +%h';&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;if ($dia&lt;10) then&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;       j=0$dia;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      j=$dia;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;fi&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;dia=$j;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;j="";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;D=$dia&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;M=$mes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;A=$ano&lt;/span&gt;&lt;br /&gt;# Definindo o usuario e senha do banco de dados&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;export PGUSER="USUARIO DO BANCO";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;export PGPASSWORD="SENHA DO BANCO";&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;#Fazendo o backup&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;pg_dump -i -h SERVIDOR -p 5432 -U "USUARIO DO BANCO" -F c -b -v -f /dados/backup/MI_SOCIAL/CONVENIO_DB$ano$mes$dia$hora$min.backup "CONVENIO_DB"&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5906319522570367522?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5906319522570367522/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5906319522570367522' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5906319522570367522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5906319522570367522'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/11/backup-banco-postgres.html' title='Backup banco postgres'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5232968265452965503</id><published>2009-10-20T15:04:00.001-07:00</published><updated>2009-10-20T15:05:12.955-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><title type='text'>Leitura XML em PHP</title><content type='html'>&lt;?php&lt;br /&gt;&lt;br /&gt;$filename ="/windows/discog/wwwroot/xml/questionario.xml";&lt;br /&gt;&lt;br /&gt;$xml = simplexml_load_file($filename );&lt;br /&gt;&lt;br /&gt;if (!$xml) {&lt;br /&gt;    $errors = libxml_get_errors();&lt;br /&gt;    foreach ($errors as $error) {&lt;br /&gt;        echo display_xml_error($error, $xml);&lt;br /&gt;    }&lt;br /&gt;    libxml_clear_errors();&lt;br /&gt;}   &lt;br /&gt;&lt;br /&gt;var_dump($xml);&lt;br /&gt;var_dump(get_object_vars($xml));&lt;br /&gt;&lt;br /&gt;?&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5232968265452965503?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5232968265452965503/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5232968265452965503' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5232968265452965503'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5232968265452965503'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/10/leitura-xml-em-php.html' title='Leitura XML em PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6059729736193201206</id><published>2009-10-06T11:49:00.000-07:00</published><updated>2009-10-06T11:50:40.907-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pessoal'/><title type='text'>Administrar o tempo é planejar a vida</title><content type='html'>&lt;p align="center"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:180%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;span style="font-family:Arial;font-size:130%;"&gt;Eduardo O C Chaves&lt;/span&gt;&lt;/p&gt; &lt;hr /&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;Geralmente quem escreve sobre  administração do tempo não o faz porque seja especialista na questão, mas, sim,  porque quer aprender mais sobre o assunto. Pelo menos foi esse o meu caso. Vou  relatar aqui algumas de minhas descobertas, como roteiro para a leitura do  quarto texto. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;1) Administrar o tempo não é uma questão  de ficar contando os minutos dedicados a cada atividade: é uma questão de saber  definir prioridades. Provavelmente (numa sociedade complexa como a nossa), NUNCA  vamos ter tempo para fazer tudo o que precisamos e desejamos fazer. Saber  administrar o tempo é ter clareza cristalina sobre o que, para nós, é mais  prioritário, dentre as várias coisas que precisamos e desejamos fazer - e tomar  providências para que essas coisas mais prioritárias sejam feitas, sabendo que  as outras provavelmente nunca vão ser feitas (mas tudo bem: elas não são  prioritárias). &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;2) Dentre as coisas que vamos listar como  prioritárias, algumas estarão ali porque nos são importantes, outras porque são  urgentes. Imagino que algo que não é NEM importante NEM urgente não estará na  lista de ninguém. E também sei que na lista de todo mundo haverá coisas que são  IMPORTANTES E URGENTES. Não resta a menor dúvida de que estas coisas devem ser  feitas imediatamente, ou, pelo menos, na primeira oportunidade. Poucas pessoas  questionarão isso. O problema surge com coisas que consideramos importantes, mas  não urgentes, e com coisas que são urgentes, mas às quais não damos muita  importância. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;3) Digamos que você considere importante  ficar mais tempo com sua família. Por outro lado, você tem que trabalhar x horas  por dia. Se o seu trabalho é mais importante do que ficar com a sua família, o  problema está resolvido: você trabalha, mesmo que isso prejudique a convivência  familiar. Mas e se o trabalho não é mais importante para você do que a  convivência familiar? Neste caso, provavelmente o trabalho é urgente, no sentido  de que tem que ser feito, pois doutra forma você vai ser despedido (ou perder  clientes, se for autônomo ou empresário) e vai ter dificuldades para manter sua  família (embora, sem trabalho, provavelmente vai poder passar mais tempo com  ela…). Aqui o conflito é entre o importante e o urgente - e é aí que a maior  parte de nós se perde, e por uma razão muito simples: algumas das tarefas que  temos que realizar não são selecionadas por nós, mas nos são impostas. Isto é:  não somos donos de todo o nosso tempo. Não temos, em relação ao nosso tempo,  toda a autonomia que gostaríamos de ter. Quando aceitamos um emprego, estamos,  na realidade, nos comprometendo a ceder a outrem o nosso tempo (e, também, o  nosso esforço, a nossa capacidade, o nosso conhecimento, etc.). Este é um  problema real e de solução difícil: não somos donos de boa parte de nosso tempo. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;4) Acontece, porém, que geralmente usamos  mal o tempo que dedicamos ao trabalho (e, por isso, temos que fazer hora extra  ou trazemos trabalho para casa), ou mesmo o tempo que passamos em casa. Usar mal  QUER DIZER que muitas vezes usamos o nosso tempo para fazer o que não é nem  importante nem urgente, mas apenas algo que sempre fizemos, pela força do  hábito. Alguém me disse, quando eu era criança, que a gente nunca deveria  abandonar a leitura de um livro, por pior que ele fosse. Que bobagem! Mas quanto  tempo desperdicei terminando de ler coisa que de nada me serviu por causa desse  conselho! Uma vez me peguei dizendo à minha família que não poderia fazer algo  (não me lembro o quê) domingo de manhã porque precisava ler os jornais. Eu lia,  religiosamente, a Folha e o Estado aos domingos de manhã (sinto muito, folks: há  tempo que não freqüento escola dominical). Lia por hábito. Achava que um  professor tem que se manter informado. Mas quando disse que "precisava" ler os  jornais me dei conta de que realmente não precisava lê-los. O que é de pior que  poderia me acontecer se eu não lesse os jornais, me perguntei. NADA, foi a  resposta que tive honestamente que dar. Se houver algo importante nos jornais  provavelmente fico sabendo no noticiário da TV, ou na VEJA. Mas daí me  perguntei: e preciso ler a VEJA todas as semanas? Resposta: não. Existe algo que  eu prefiro ler/fazer naquelas manhãs de domingo que ganhei? Claro, muitas coisas  - PARA AS QUAIS EU ANTES NÃO TINHA TEMPO. Ganhei as horas dos jornais, ganhei as  horas da VEJA, fui ganhando uma horinha aqui outra ali, para as coisas que eu  realmente queria fazer há muito tempo e não achava tempo… &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;5) Administrar o tempo é ganhar autonomia  sobre a sua vida, não é ficar escravo do relógio. É uma batalha constante, que  tem que ser ganha todo dia. Se você quer ter a autonomia de decidir passar mais  tempo com a família, ou sem fazer nada, você tem que ganhar esse tempo deixando  de fazer outras coisas que são menos importantes para você. Em última instância  pode ser que você até tenha que, eventualmente, arrumar um outro emprego ou uma  outra ocupação. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;6) O tempo é distribuído entre as pessoas  de forma bem mais democrática que muitos dos outros recursos de que nós  dependemos (como, por exemplo, a inteligência). Todos os dias cada um de nós  recebe exatamente 24 horas (a menos que seja o último dia de nossas vidas): nem  mais, nem menos. Rico não recebe mais do que pobre, professor universitário não  recebe mais do que analfabeto, executivo não recebe mais do que operário.  Entretanto, apesar desse igualitarismo, uns conseguem realizar uma grande  quantidade de coisas num dia - outros, ao final do dia, têm o sentimento de que  o dia acabou e não fizeram nada. A diferença é que os primeiros percebem que o  tempo, apesar de democraticamente distribuído, é um recurso altamente perecível.  Um dia perdido hoje (perdido no sentido de que não realizei nele o que  precisaria ou desejaria realizar) não é recuperado depois: é perdido para  sempre. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;7) Há os que afirmam, hoje, que o recurso  mais escasso na nossa sociedade não é dinheiro, não são matérias primas, não é  energia, não é nem mesmo inteligência: é tempo. Mas tempo se ganha, ou se faz,  deixando de fazer coisas que não são nem importantes nem urgentes e sabendo  priorizar aquelas que são importantes e/ou urgentes. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;8) Quem tem tempo não é quem não faz nada:  é quem consegue administrar o tempo que tem de modo a poder fazer aquilo que  quer. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;9) Por outro lado, ser produtivo não é  equivalente a estar ocupado. Há muitas pessoas que estão o tempo todo ocupadas  exatamente porque são improdutivas - não sabem onde concentrar seus esforços e,  por isso, ciscam aqui, ciscam ali, mas nunca produzem nada. Ser produtivo é, em  primeiro lugar, saber administrar o tempo, ter sentido de direção, saber aonde  se vai. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;10) Administrar o tempo, em última  instância, é planejar estrategicamente a nossa vida. Para isso, precisamos, em  primeiro lugar, saber aonde queremos chegar (definição de objetivos). Onde quero  estar, o que quero ser, daqui a 5, 10, 25, 50 anos? O segundo passo é começar a  estrategiar: transformar objetivos em metas (com prazos e quantificações) e  decidir, em linhas gerais, como as metas serão alcançadas. O terceiro passo é  criar planos táticos: explorar as alternativas específicas disponíveis para se  chegar aonde queremos chegar, escolher fontes de financiamento (emprego, em  geral, é fonte de financiamento), etc. Em quarto lugar, fazer o que tem que ser  feito. Durante todo o processo, precisamos estar constantemente avaliando os  meios que estamos usando, para verificar se estão nos levando mais perto de onde  queremos vamos querer estar ao final do processo. Se não, troquemos de meios  (procuremos outro emprego, por exemplo). &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;11) Mas tudo começa com uma verdade tão  simples que parece uma platitude: se você não sabe aonde quer chegar,  provavelmente nunca vai chegar lá - por mais tempo que tenha. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;"&gt;12) Quando o nosso tempo termina, acaba a  nossa vida. Não há maneira de obter mais. Por isso, tempo é vida. Quem  administra o tempo ganha vida, mesmo vivendo o mesmo tempo. Prolongar a duração  de nossa vida não é algo sobre o qual tenhamos muito controle. Aumentar a nossa  vida ganhando tempo dentro da duração que ela tem é algo, porém, que está ao  alcance de todos. Basta um pouco de esforço e determinação. &lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;(*) Este artigo é resumo, feito em 1998, de um livreto, &lt;a href="http://www.chaves.com.br/TEXTSELF/MISC/timemgt.htm"&gt; Administração do Tempo&lt;/a&gt;, que escrevi em 1992. &lt;/span&gt;&lt;/p&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;font-size:78%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;© Copyright by Eduardo Chaves&lt;/span&gt;&lt;/p&gt; &lt;hr align="justify"&gt; &lt;p align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;"&gt;Last revised:  &lt;!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %b %Y" startspan --&gt;02 May 2004&lt;!--webbot bot="Timestamp" i-checksum="15116" endspan --&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6059729736193201206?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.chaves.com.br/TEXTSELF/MISC/timemgt2.htm' title='Administrar o tempo é planejar a vida'/><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6059729736193201206/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6059729736193201206' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6059729736193201206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6059729736193201206'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/10/administrar-o-tempo-e-planejar-vida.html' title='Administrar o tempo é planejar a vida'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5530912085230779075</id><published>2009-10-05T03:48:00.000-07:00</published><updated>2009-10-05T04:07:30.818-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pessoal'/><title type='text'>10km ObCursos</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_d-oepSUcka8/SsnTO-CcarI/AAAAAAAABnE/xj5b_v9h3tw/s1600-h/caioObcursos.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 227px; height: 320px;" src="http://3.bp.blogspot.com/_d-oepSUcka8/SsnTO-CcarI/AAAAAAAABnE/xj5b_v9h3tw/s320/caioObcursos.png" alt="" id="BLOGGER_PHOTO_ID_5389070683250387634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_d-oepSUcka8/SsnTFLeG7jI/AAAAAAAABm8/AphPMHTWfcg/s1600-h/obcursosmapa.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 277px; height: 320px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/SsnTFLeG7jI/AAAAAAAABm8/AphPMHTWfcg/s320/obcursosmapa.jpg" alt="" id="BLOGGER_PHOTO_ID_5389070515057389106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_d-oepSUcka8/SsnSuDbeqJI/AAAAAAAABm0/R1xhHP5Sbk4/s1600-h/CaioObcurso2.png"&gt;&lt;img style="cursor: pointer; width: 220px; height: 320px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/SsnSuDbeqJI/AAAAAAAABm0/R1xhHP5Sbk4/s320/CaioObcurso2.png" alt="" id="BLOGGER_PHOTO_ID_5389070117761886354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;10 km em 01/03/2009 - Brasília - DF - Incrição 334 - Colocação 618 Geral / 118 40 44 anos&lt;br /&gt;Tempo bruto: 01h00m57s, tempo líquido: 01h00m42s&lt;br /&gt;Taxa: R$ 25,00&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5530912085230779075?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5530912085230779075/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5530912085230779075' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5530912085230779075'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5530912085230779075'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/10/10km-obcursos.html' title='10km ObCursos'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_d-oepSUcka8/SsnTO-CcarI/AAAAAAAABnE/xj5b_v9h3tw/s72-c/caioObcursos.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6493686372178352906</id><published>2009-10-04T07:15:00.000-07:00</published><updated>2009-10-05T11:34:38.879-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pessoal'/><title type='text'>19a Corrida das pontes</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_d-oepSUcka8/SsnWC_d9GUI/AAAAAAAABnM/9MrKnmrU7RE/s1600-h/CorridaPontes.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 167px;" src="http://4.bp.blogspot.com/_d-oepSUcka8/SsnWC_d9GUI/AAAAAAAABnM/9MrKnmrU7RE/s320/CorridaPontes.png" alt="" id="BLOGGER_PHOTO_ID_5389073776010664258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_d-oepSUcka8/SsiuX1ccp5I/AAAAAAAABmk/7L4C9vtCd3Q/s1600-h/percurso_corrida_pontes_1253123607.jpg"&gt;&lt;img style="cursor: pointer; width: 260px; height: 320px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/SsiuX1ccp5I/AAAAAAAABmk/7L4C9vtCd3Q/s320/percurso_corrida_pontes_1253123607.jpg" alt="" id="BLOGGER_PHOTO_ID_5388748678655420306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;No dia 4 de outubro de 2009 fiz a corrida das pontes, inscrição 164.&lt;br /&gt;&lt;br /&gt;19ª Corrida das Pontes (Tempo bruto 1h00min 44seg/ Tempo líquido: 58min59seg (987 de 1125 /167 de 192)) R$ 25,00 Inscrição na Free Corner.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6493686372178352906?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6493686372178352906/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6493686372178352906' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6493686372178352906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6493686372178352906'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/10/no-dia-4-de-outubro-de-2009-fiz-corrida.html' title='19a Corrida das pontes'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_d-oepSUcka8/SsnWC_d9GUI/AAAAAAAABnM/9MrKnmrU7RE/s72-c/CorridaPontes.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3332617636762126226</id><published>2009-09-29T08:08:00.000-07:00</published><updated>2009-09-29T08:09:40.749-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Regular Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Postgres Regular Expression</title><content type='html'>O problema hoje foi verificar se os valores do campo resposta eram valores numérios:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;select resposta&lt;br /&gt;from dados.itemquest&lt;br /&gt;where pergunta = 'sagi_latitude'&lt;br /&gt;and (resposta ~ '[-]{0,1}[0-9]{1,2}.[0-9]*')&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3332617636762126226?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3332617636762126226/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3332617636762126226' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3332617636762126226'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3332617636762126226'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/09/postgres-regular-expression.html' title='Postgres Regular Expression'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4743509302842993537</id><published>2009-09-04T13:38:00.000-07:00</published><updated>2009-09-04T14:37:41.295-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><title type='text'>JavaScript e Expressões Regulares</title><content type='html'>cep&lt;br /&gt;onkeyup=\'javascript:&lt;br /&gt;       this.value=this.value.replace(/\D/g,"");&lt;br /&gt;       this.value=this.value.replace(/^(\d{5})(\d)/,"$1-$2");\'&lt;br /&gt;   onkeypress=\'javascript:&lt;br /&gt;       this.value=this.value.replace(/\D/g,"");&lt;br /&gt;       this.value=this.value.replace(/^(\d{5})(\d)/,"$1-$2");\'&lt;br /&gt;&lt;br /&gt;telefone&lt;br /&gt;onKeyUp=\'javascript:&lt;br /&gt;          t=this.value.replace(/\D/g,"");&lt;br /&gt;          t=t.replace(/^(\d\d)(\d)/g,"($1) $2");&lt;br /&gt;          this.value=t.replace(/(\d{4})(\d)/,"$1-$2");\'&lt;br /&gt;&lt;br /&gt;CPF&lt;br /&gt;onkeyup='javascript:this.value=this.value.replace(/\D/g,"");                 &lt;br /&gt;           this.value=this.value.replace(/(\d{3})(\d)/,"$1.$2");&lt;br /&gt;           this.value=this.value.replace(/(\d{3})(\d)/,"$1.$2");                                                              &lt;br /&gt;           this.value=this.value.replace(/(\d{3})(\d{1,2})$/,"$1-$2");'&lt;br /&gt;&lt;br /&gt; function validacpf(campo){&lt;br /&gt;    var i;&lt;br /&gt;    //s = document.getElementById('login').p_cpf.value;&lt;br /&gt;    s = campo;&lt;br /&gt;    var c = s.substr(0,9);&lt;br /&gt;    var dv = s.substr(9,2);&lt;br /&gt;    var d1 = 0;&lt;br /&gt;    for (i = 0; i &lt; 9; i++){&lt;br /&gt;        d1 += c.charAt(i)*(10-i);&lt;br /&gt;    }&lt;br /&gt;    if (d1 == 0){&lt;br /&gt;        alert("CPF Invalido")&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;    d1 = 11 - (d1 % 11);&lt;br /&gt;    if (d1 &gt; 9) d1 = 0;&lt;br /&gt;    if (dv.charAt(0) != d1){&lt;br /&gt;        alert("CPF Invalido")&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;    d1 *= 2;&lt;br /&gt;    for (i = 0; i &lt; 9; i++){&lt;br /&gt;        d1 += c.charAt(i)*(11-i);&lt;br /&gt;    }&lt;br /&gt;    d1 = 11 - (d1 % 11);&lt;br /&gt;    if (d1 &gt; 9) d1 = 0;&lt;br /&gt;    if (dv.charAt(1) != d1){&lt;br /&gt;        alert("CPF Invalido")&lt;br /&gt;        return false;&lt;br /&gt;    }&lt;br /&gt;    return true;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4743509302842993537?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4743509302842993537/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4743509302842993537' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4743509302842993537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4743509302842993537'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/09/javascript-e-expressoes-regulares.html' title='JavaScript e Expressões Regulares'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4351690650219837614</id><published>2009-08-27T05:01:00.000-07:00</published><updated>2009-08-27T05:04:03.320-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>CRON x SHUTDOWN</title><content type='html'>&lt;pre&gt;Necessitei reinicializar a máquina uma vez por dia, e para fazer funcionar isso:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# crontab -e -u root&lt;br /&gt;&lt;br /&gt;0 4 * * * /sbin/shutdown -h now&lt;br /&gt;&lt;br /&gt;Desta forma todos os dias, as 4h00 da madrugada o computador se reinicializa automaticamente&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4351690650219837614?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4351690650219837614/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4351690650219837614' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4351690650219837614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4351690650219837614'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/08/cron-x-shutdown.html' title='CRON x SHUTDOWN'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1837458251939757567</id><published>2009-08-10T12:55:00.000-07:00</published><updated>2009-08-21T07:58:22.800-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><title type='text'>Configuração e erro PHP</title><content type='html'>As linhas abaixo servem para quem programa em PHP e não tem acesso ao arquivo PHP.INI e deseja visualizar os erros de programação.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;span class="html"&gt;&lt;span class="default"&gt; error_reporting&lt;/span&gt;&lt;span class="keyword"&gt;(&lt;/span&gt;&lt;span class="default"&gt;E_ALL&lt;/span&gt;&lt;span class="keyword"&gt;);&lt;br /&gt; &lt;/span&gt;&lt;span class="default"&gt;ini_set&lt;/span&gt;&lt;span class="keyword"&gt;(&lt;/span&gt;&lt;span class="string"&gt;"display_errors"&lt;/span&gt;&lt;span class="keyword"&gt;, &lt;/span&gt;&lt;span class="default"&gt;1&lt;/span&gt;&lt;span class="keyword"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1837458251939757567?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1837458251939757567/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1837458251939757567' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1837458251939757567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1837458251939757567'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/08/configuracao-e-erro-php.html' title='Configuração e erro PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1579583711569026328</id><published>2009-07-23T06:14:00.001-07:00</published><updated>2009-07-23T06:14:58.981-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Uso do xserver (e aplicações) remotamente, via ssh</title><content type='html'>Colaboração: irado furioso com tudo&lt;br /&gt;&lt;br /&gt;Data de Publicação: 28 de March de 2009&lt;br /&gt;&lt;br /&gt;Perambulei muito pela 'net (via google) para achar alguma coisa que me&lt;br /&gt;permitisse, acessando máquina remota via ssh, usar aplicativos gráficos,&lt;br /&gt;tais como o firefox, e-mail (MUAs), editores de texto. Ou sempre faltava&lt;br /&gt;algo ou era mais complicado do que receita de renda de bilros.&lt;br /&gt;&lt;br /&gt;Finalmente, juntando partes daqui, dacolá, cheguei a uma receitinha QUE&lt;br /&gt;FUNCIONA. Vejamos:&lt;br /&gt;&lt;br /&gt;Na máquina que vai ser o SERVIDOR, altere o /etc/ssh/sshd_config,&lt;br /&gt;como segue:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; X11Forwarding = yes (normalmente comentado)&lt;br /&gt; AllowTcpForwarding = yes (idem)&lt;br /&gt;&lt;br /&gt;Daí é só dar restart no sshd (cada distribuição tem seu "jeito" particular).&lt;br /&gt;&lt;br /&gt;No destino (a máquina que vai usar os aplicativos remotos), basta abrir um&lt;br /&gt;terminal qualquer - no ambiente gráfico - estabelecer conexão ssh apropriada&lt;br /&gt;e chamar o aplicativo desejado:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; $ ssh -XYCc blowfish usuario@maquina.destino&lt;br /&gt; [informações do acesso.. ]&lt;br /&gt;&lt;br /&gt;Estando no terminal (agora é no remoto):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; $ firefox &amp;amp;&lt;br /&gt; $ sylpheed &amp;amp;&lt;br /&gt;&lt;br /&gt;Trafegando os dados no tunel ssh é seguro, é tudo criptografado. Além do que&lt;br /&gt;vc pode (por exemplo) navegar em sites nunca dante navegados (proibição ou&lt;br /&gt;bloqueio de proxies NÃO FUNCIONAM mais pra vc)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1579583711569026328?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1579583711569026328/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1579583711569026328' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1579583711569026328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1579583711569026328'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/07/uso-do-xserver-e-aplicacoes-remotamente.html' title='Uso do xserver (e aplicações) remotamente, via ssh'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3929236465802291966</id><published>2009-05-29T05:59:00.000-07:00</published><updated>2009-05-29T06:05:08.305-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostGis'/><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Criar um shape de um conjunto de outros</title><content type='html'>Procurei na internet alguns arquivos presentam mapas (shape files) da américa do sul e encontrei somente arquivos com os países junto com seus departamentos (estados). Para conseguir somente um arquivo (registro) por país executei o seguinte comando.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;select cntry_name  as pais, fips_cntry as sigla,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;   GeomUnion(the_geom) as the_geom from mapas.ar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;   group by cntry_name, fips_cntry&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;O comando &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;GeomUnion&lt;/span&gt; gera uma agregação de geometrias.&lt;br /&gt;&lt;br /&gt;Com isso parti para criar uma tabela que represente os países da américa do sul.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;create table mapas.southamericacountry as&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;  select cntry_name  as pais, fips_cntry as sigla,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;     GeomUnion(the_geom) as the_geom from mapas.ar&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;     group by cntry_name, fips_cntry&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;union&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;  select cntry_name  as pais, fips_cntry as sigla,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    GeomUnion(the_geom) as the_geom from mapas.bl&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    group by cntry_name, fips_cntry&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;....&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3929236465802291966?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3929236465802291966/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3929236465802291966' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3929236465802291966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3929236465802291966'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/criar-um-shape-de-um-conjunto-de-outros.html' title='Criar um shape de um conjunto de outros'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8375853832374177482</id><published>2009-05-29T04:53:00.000-07:00</published><updated>2009-05-29T04:58:43.348-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Incluir um arquivo Shape no PostGIS</title><content type='html'>Após buscar na internet alguns arquivos de mapas no formato (shp - shape files) inseri no banco de dados com o comando.&lt;br /&gt;&lt;br /&gt;shp2pgsql ve mapas.ve &gt; ve.sql&lt;br /&gt;&lt;br /&gt;onde:&lt;br /&gt;ve - corresponde aos arquivos do mapa (ve.shp, ve.dbf, ve.shx, ve.sbx, ve.sbn).&lt;br /&gt;mapas.ve - é o destino no banco de dados,&lt;span style="font-weight: bold;"&gt; mapas&lt;/span&gt; é o schema PosgtreSQL e &lt;span style="font-weight: bold;"&gt;ve&lt;/span&gt; no nome da tabela.&lt;br /&gt;ve.sql - é o arquivo destino, ou seja, é criado um script sql para inserir no banco de dados.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8375853832374177482?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8375853832374177482/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8375853832374177482' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8375853832374177482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8375853832374177482'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/incluir-um-arquivo-shape-no-postgis.html' title='Incluir um arquivo Shape no PostGIS'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8998227662251802963</id><published>2009-05-22T13:10:00.000-07:00</published><updated>2009-05-22T13:11:35.758-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Código para recuperar o fonte de uma função</title><content type='html'>Para recuperar a fonte de uma função.&lt;br /&gt;&lt;br /&gt;No exemplo abaixo a função chama-se indicador_repasse_por_cisterna&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;select prosrc&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;from pg_catalog.pg_proc&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;where proname= 'indicador_repasse_por_cisterna'&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8998227662251802963?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8998227662251802963/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8998227662251802963' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8998227662251802963'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8998227662251802963'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/codigo-para-recuperar-o-fonte-de-uma.html' title='Código para recuperar o fonte de uma função'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4991193182759460729</id><published>2009-05-14T11:39:00.000-07:00</published><updated>2009-08-21T03:59:19.976-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><category scheme='http://www.blogger.com/atom/ns#' term='Suse'/><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Suse / Oracle / PHP</title><content type='html'>Para instalar a biblioteca Oracle no sistema operacional SUSE linguagem PHP, utilizei:&lt;br /&gt;&lt;br /&gt;oracle-instantclient11.1-basic-11.1.0.7.0-1&lt;br /&gt;&lt;br /&gt;e coloquei o caminho da biblioteca Oracle em (/usr/lib/oracle/11.1/client/lib/)&lt;br /&gt;&lt;br /&gt;ld.so.conf&lt;br /&gt;&lt;br /&gt;Para ativar o ld.so.conf&lt;br /&gt;&lt;br /&gt;ldconfig&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4991193182759460729?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4991193182759460729/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4991193182759460729' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4991193182759460729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4991193182759460729'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/suse-oracle-php.html' title='Suse / Oracle / PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8840308743987937398</id><published>2009-05-14T10:38:00.000-07:00</published><updated>2009-05-14T11:37:46.206-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Caminho para biblioteca</title><content type='html'>Tive que colocar um conjunto de biblioteca para que o SO pudesse buscar em um diretório.&lt;br /&gt;&lt;br /&gt;Para isso inseri esta informação em:&lt;br /&gt;&lt;br /&gt;/etc/ld.so.conf&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;utilizei o comando&lt;br /&gt;&lt;br /&gt;ldconfig&lt;br /&gt;&lt;br /&gt;para fazer valer as alterações executadas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8840308743987937398?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8840308743987937398/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8840308743987937398' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8840308743987937398'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8840308743987937398'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/caminho-para-biblioteca.html' title='Caminho para biblioteca'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8594056214975634839</id><published>2009-05-14T10:36:00.001-07:00</published><updated>2009-05-14T11:39:17.620-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>rpm</title><content type='html'>O meu problema hoje foi determinar se uma biblioteca havia sido instalada no sistema.&lt;br /&gt;&lt;br /&gt;Utilizei o comando:&lt;br /&gt;&lt;br /&gt;rpm -qa  | grep oracle&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8594056214975634839?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8594056214975634839/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8594056214975634839' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8594056214975634839'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8594056214975634839'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/rpm.html' title='rpm'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1135453923995470636</id><published>2009-05-14T04:19:00.000-07:00</published><updated>2009-05-14T04:22:46.435-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Extrair arquivos de Imagens ISO</title><content type='html'>&lt;pre&gt;Criar o diretório ISO&lt;br /&gt;# mkdir /mnt/iso&lt;br /&gt;# mount -o loop disk1.iso /mnt/iso&lt;br /&gt;&lt;br /&gt;Copiando o arquivo file.txt para /tmp&lt;br /&gt;# cd /mnt/iso&lt;br /&gt;# cp file.txt /tmp&lt;br /&gt;&lt;br /&gt;Copiando o arquivo foo.rpm da imagem&lt;br /&gt;# cd /mnt/iso/RedHat/RPMS&lt;br /&gt;# cp foo.rpm /tmp&lt;br /&gt;&lt;br /&gt;fonte: http://www.cyberciti.biz/tips/extracting-particular-file-from-linux-iso-cd-image-file-after-installation.html&lt;br /&gt;data: 14 de maio de 2009&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1135453923995470636?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1135453923995470636/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1135453923995470636' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1135453923995470636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1135453923995470636'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/extrair-arquivos-de-imagens-iso.html' title='Extrair arquivos de Imagens ISO'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-7756572968753498641</id><published>2009-05-11T13:30:00.000-07:00</published><updated>2010-09-15T09:25:18.086-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Procurar um texto em uma lista de arquivos</title><content type='html'>O meu problema hoje foi tentar encontrar um texto em um conjunto de programas fonte (*.php). Para resolver isso executei o comando abaixo no SUSE/Linux&lt;br /&gt;&lt;br /&gt;find . -name  '*.php'  | cut -c 1-100 | cat | grep version&lt;br /&gt;&lt;br /&gt;find - para procurar os arquivos *.php&lt;br /&gt;cut - cortar o texto da posição 1 até 100&lt;br /&gt;cat - apresentar o conteúdo do texto&lt;br /&gt;grep - selecionar o um texto específico&lt;br /&gt;&lt;br /&gt;outra forma&lt;br /&gt; find . -name "*.php" |  xargs  cat   | grep close&lt;br /&gt;&lt;br /&gt;mais uma forma&lt;br /&gt;&lt;br /&gt;find . -name '*.php' | xargs -n2 grep 'banco' &gt;lista&lt;br /&gt;cat lista&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-7756572968753498641?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/7756572968753498641/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=7756572968753498641' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7756572968753498641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7756572968753498641'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/05/procurar-um-texto-em-uma-lista-de.html' title='Procurar um texto em uma lista de arquivos'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4549294231432931701</id><published>2009-04-08T07:11:00.000-07:00</published><updated>2009-05-11T13:21:51.645-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Exim'/><title type='text'>Exim</title><content type='html'>Arquivos do Exim&lt;br /&gt;&lt;br /&gt;./var/spool/exim&lt;br /&gt;./var/log/exim&lt;br /&gt;./etc/sysconfig/exim&lt;br /&gt;./etc/init.d/exim&lt;br /&gt;./etc/logrotate.d/exim&lt;br /&gt;./etc/exim&lt;br /&gt;./usr/share/doc/packages/exim&lt;br /&gt;./usr/sbin/exim&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Arquivo de configuração do Exim&lt;br /&gt;./etc/exim/exim.conf&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;exim -bp &lt;/li&gt;&lt;/ul&gt;Comando para listar todos os emails na queue&lt;br /&gt;&lt;ul&gt;&lt;li&gt;exim -Mrm `ls /var/spool/exim/input/ | grep -- -H$ | cut -c 1-16`&lt;/li&gt;&lt;/ul&gt;Comando para tirar da queue todos os emails.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4549294231432931701?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.exim.org/' title='Exim'/><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4549294231432931701/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4549294231432931701' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4549294231432931701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4549294231432931701'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/04/exim.html' title='Exim'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4441529093604104024</id><published>2009-03-06T02:55:00.000-08:00</published><updated>2009-03-06T03:01:52.715-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Triggers</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family: courier new;"&gt;&lt;br /&gt;O problema enfrentado foi criar registros em uma tabela que contenha a quantidade de página e as páginas. Por exemplo, caso o número de páginas seja 10, necessita-se 10 registros com as páginas de 1 a 10.&lt;br /&gt;&lt;br /&gt;Para resolver isso, optou-se de utilizar gatilhos (TRIGGERS) na tabela &lt;span style="font-weight: bold;"&gt;ufcaio&lt;/span&gt;. Para cada operação nesta tabela reflete-se na tabela &lt;span style="font-weight: bold;"&gt;ufcaio_destino&lt;/span&gt;.&lt;br /&gt;Tabela destino igual a tabela origem&lt;br /&gt;&lt;br /&gt;CREATE TABLE teste.ufcaio_destino&lt;br /&gt;(&lt;br /&gt;  uf character varying,&lt;br /&gt;  estado character varying,&lt;br /&gt;  paginas integer,&lt;br /&gt;  pagina integer&lt;br /&gt;)&lt;br /&gt;WITHOUT OIDS;&lt;br /&gt;ALTER TABLE teste.ufcaio_destino OWNER TO postgres;&lt;br /&gt;&lt;br /&gt;Tabela origem.&lt;br /&gt;&lt;br /&gt;CREATE TABLE teste.ufcaio&lt;br /&gt;(&lt;br /&gt;  uf character varying,&lt;br /&gt;  estado character varying,&lt;br /&gt;  paginas integer,&lt;br /&gt;  pagina integer&lt;br /&gt;)&lt;br /&gt;WITHOUT OIDS;&lt;br /&gt;ALTER TABLE teste.ufcaio OWNER TO postgres;&lt;br /&gt;&lt;br /&gt;Associando um Trigger na tabela origem.&lt;br /&gt;&lt;br /&gt;CREATE TRIGGER ufcaio_trigger&lt;br /&gt;  AFTER INSERT OR UPDATE OR DELETE&lt;br /&gt;  ON teste.ufcaio&lt;br /&gt;  FOR EACH ROW&lt;br /&gt;  EXECUTE PROCEDURE teste.ufcaio();&lt;br /&gt;&lt;br /&gt;Função chamada pelo Trigger.&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE FUNCTION teste.ufcaio()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;  RETURNS trigger AS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$BODY$&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        --&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        IF (TG_OP = 'DELETE') THEN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            delete from teste.ufcaio_destino where uf=OLD.uf;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            return OLD;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        ELSIF (TG_OP = 'UPDATE') THEN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            delete from teste.ufcaio_destino where uf=NEW.uf;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            FOR i IN 1..NEW.paginas LOOP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;               insert into teste.ufcaio_destino (uf, estado, paginas, pagina) values (NEW.uf, NEW.estado, NEW.paginas, i);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            RETURN NEW;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        ELSIF (TG_OP = 'INSERT') THEN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            delete from teste.ufcaio_destino where uf=NEW.uf;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            FOR i IN 1..NEW.paginas LOOP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;               insert into teste.ufcaio_destino (uf, estado, paginas, pagina) values (NEW.uf, NEW.estado, NEW.paginas, i);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;            RETURN NEW;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        END IF;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;        RETURN NULL; -- result is ignored since this is an AFTER trigger&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;    END;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;$BODY$&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;  LANGUAGE 'plpgsql' VOLATILE;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;ALTER FUNCTION teste.ufcaio() OWNER TO postgres;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4441529093604104024?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4441529093604104024/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4441529093604104024' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4441529093604104024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4441529093604104024'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/03/triggers.html' title='Triggers'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1926103661284855884</id><published>2009-03-05T11:04:00.000-08:00</published><updated>2009-03-05T11:18:04.030-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Criando um Database novo Postgres</title><content type='html'>Hoje necessitei criar um Database novo no PostgreSQL&lt;br /&gt;&lt;br /&gt;Criar uma pasta para acomodar o Database&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;mkdir /usr/local/pgsql/data&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Atribuir a propriedade para o usuário postgres&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;chown postgres /usr/local/pgsql/data&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mudar para usuário postgres&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;su - postgres&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Criar o Database com a aplicação initbd&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;/usr/local/pgsql/bin/initdb -D -A /usr/local/pgsql/data --locale='UTF-8'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Atualizar no arquivo postgres.conf as porta e a possibilidade de acesso por clientes remotos.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;listen_addresses = '*' &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;port = 5433 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Atualizar o arquivo pg_hba.conf para aceitar conexão por qualquer computador da rede 10.68.0.0&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;host    all         all         10.68.0.0/8           md5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ligar o Banco de Dados&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;postmaster -i -D &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;/usr/local/pgsql/data&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;  &gt;&gt;logfile 2&gt;&amp;amp;1 &amp;amp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Desligar o Banco de Dados&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;pg_ctl stop -D &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;/usr/local/pgsql/data&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; -w&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Alterar a senha do postgres (comando SQL)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ALTER USER davide WITH PASSWORD 'hu8jmn3';&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1926103661284855884?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1926103661284855884/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1926103661284855884' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1926103661284855884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1926103661284855884'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/03/criando-um-database-novo-postgres.html' title='Criando um Database novo Postgres'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-9100446161657733374</id><published>2009-01-07T05:39:00.000-08:00</published><updated>2009-02-09T15:02:02.650-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Pessoal'/><title type='text'>São Silvestre 2008</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_d-oepSUcka8/SZC1uMz3b4I/AAAAAAAABUk/d9C_zjTqZDM/s1600-h/31122008020.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 240px; height: 320px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/SZC1uMz3b4I/AAAAAAAABUk/d9C_zjTqZDM/s320/31122008020.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5300936566732451714" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_d-oepSUcka8/SZC1URluwiI/AAAAAAAABUc/n92g-ul4RLs/s1600-h/31122008019.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_d-oepSUcka8/SZC1URluwiI/AAAAAAAABUc/n92g-ul4RLs/s320/31122008019.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5300936121338741282" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_d-oepSUcka8/SZC01sPYscI/AAAAAAAABUU/_0kSyf9wy24/s1600-h/SaoSilvestre.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 213px;" src="http://1.bp.blogspot.com/_d-oepSUcka8/SZC01sPYscI/AAAAAAAABUU/_0kSyf9wy24/s320/SaoSilvestre.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5300935595916833218" /&gt;&lt;/a&gt;&lt;br /&gt;Site com resultado oficial da corrida: &lt;a href="http://www.saosilvestre.com.br/2008//resultados/2008/"&gt;Meu n&amp;uacute;mero foi 14781&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Passando pela linha de chegada&lt;br /&gt;&lt;a href="http://yescom.webrun.com.br/fotos/commerceft/videos/index/numFotografado/14781/idEvento/382/tb/6577/tl/6314/?mdireito=nao" target="_blank"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;iframe width="480" height="312" scrolling="No" frameborder="0" src="http://www.webrun.com.br/fotos/commerceft/videos/mostraembed/?idVideo=bW2C4npXe3olIwVNG3gw5hXFcOBxCVBVNsOebfb2%2F%2Fo%3D"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;Após a chegada, eu estou me arrastando.&lt;br /&gt;&lt;iframe width="480" height="312" scrolling="No" frameborder="0" src="http://www.webrun.com.br/fotos/commerceft/videos/mostraembed/?idVideo=km2ZZIU%2F%2BQveyVkDnmt4wo6cWs%2FcHHN5jW0BrAPLIRw%3D"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-9100446161657733374?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/9100446161657733374/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=9100446161657733374' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/9100446161657733374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/9100446161657733374'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2009/01/so-silvestre-2008.html' title='São Silvestre 2008'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_d-oepSUcka8/SZC1uMz3b4I/AAAAAAAABUk/d9C_zjTqZDM/s72-c/31122008020.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-6180126532171052155</id><published>2008-12-23T17:12:00.000-08:00</published><updated>2008-12-24T04:54:05.965-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>cron com SUSE 11</title><content type='html'>Tentei por alguns dias fazer funcionar o &lt;span style="color: rgb(255, 0, 0);"&gt;cron&lt;/span&gt; em um SUSE 11.o com insucesso.&lt;br /&gt;&lt;br /&gt;O programa (script) que desenvolvi funcionava perfeitamente como usuário &lt;span style="color: rgb(255, 0, 0); font-style: italic;"&gt;root&lt;/span&gt;, porém no cron não funcionou.&lt;br /&gt;&lt;br /&gt;Uma das formas de verificar o funcionamento do &lt;span style="color: rgb(255, 0, 0); font-style: italic;"&gt;cron&lt;/span&gt; é através do comando abaixo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(255, 0, 0);"&gt;tail /var/log/messages&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Neste arquivo são armazendos as mensagens de execução do &lt;span style="font-style: italic; color: rgb(255, 0, 0);"&gt;cron&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Programei &lt;span style="font-style: italic; color: rgb(255, 0, 0);"&gt;cron&lt;/span&gt; através do comando:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-style: italic;"&gt;crontab -u root -e&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;* * * * * date &gt; /root/teste&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este script é executado a cada minuto. É armazenado  no arquivo teste a data e hora a cada minuto.&lt;br /&gt;&lt;br /&gt;Porém o meu script não funcionava no &lt;span style="color: rgb(255, 0, 0); font-style: italic;"&gt;cron&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Após alguns testes, descobri que é necessário definir no script os arquivos com o caminho absoluto, e eu havia definido com caminho relativo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-6180126532171052155?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/6180126532171052155/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=6180126532171052155' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6180126532171052155'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/6180126532171052155'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/12/cron-com-suse-11.html' title='cron com SUSE 11'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-173807215348500840</id><published>2008-12-23T11:06:00.000-08:00</published><updated>2008-12-23T11:22:52.708-08:00</updated><title type='text'>Extrai uma coluna de uma lista</title><content type='html'>O meu problema é extrair uma coluna de uma lista. Por exemplo, com o comando&lt;br /&gt;&lt;span style="font-size:78%;"&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;ps -aux&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;recebo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3399  0.0  0.0  1580  612 ?        S    Dec22   0:00 syslogd -m 0&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3403  0.0  0.0  1524  468 ?        S    Dec22   0:00 klogd -x&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3414  0.0  0.0  1512  448 ?        S    Dec22   0:04 irqbalance&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;rpc       3432  0.0  0.0  1676  568 ?        S    Dec22   0:00 portmap&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;rpcuser   3452  0.0  0.0  1664  720 ?        S    Dec22   0:00 rpc.statd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3464  0.0  0.0  1572  400 ?        S    Dec22   0:00 mdadm --monitor -&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3481  0.0  0.0 83556  604 ?        S    Dec22   0:00 /sbin/auditd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3569  0.0  0.0  7592 1916 ?        S    Dec22   0:01 cupsd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3594  0.0  0.0  3656 1572 ?        S    Dec22   0:00 /usr/sbin/sshd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3610  0.0  0.0  2136  900 ?        S    Dec22   0:00 xinetd -stayalive&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3639  0.0  0.0  6100 2580 ?        S    Dec22   0:01 sendmail: accepti&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;smmsp     3648  0.0  0.0  5992 2292 ?        S    Dec22   0:00 sendmail: Queue r&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3659  0.0  0.0  1568  472 ?        S    Dec22   0:00 gpm -t imps2 -m /&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3669  0.0  0.0  1600  640 ?        S    Dec22   0:00 crond&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;xfs       3693  0.0  0.0  5452 3112 ?        S    Dec22   0:00 xfs -droppriv -da&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;daemon    3703  0.0  0.0  1584  580 ?        S    Dec22   0:00 /usr/sbin/atd&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3735  0.0  0.1 11644 5232 ?        S    Dec22   0:00 /opt/fgs/www/bin/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;apache    3746  0.0  0.1 11776 5328 ?        S    Dec22   0:00 /opt/fgs/www/bin/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;apache    3747  0.0  0.1 11776 5328 ?        S    Dec22   0:00 /opt/fgs/www/bin/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;apache    3748  0.0  0.1 11776 5328 ?        S    Dec22   0:00 /opt/fgs/www/bin/&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3756  0.0  0.0  4244 1116 ?        S    Dec22   0:00 sh /usr/RaidMan/R&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3760  0.5  0.4 228124 19852 ?      S    Dec22   9:51 ./jre/bin/java -D&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3772  0.0  0.0  1504  432 tty2     S    Dec22   0:00 /sbin/mingetty tt&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3773  0.0  0.0  1504  432 tty3     S    Dec22   0:00 /sbin/mingetty tt&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3774  0.0  0.0  1504  428 tty4     S    Dec22   0:00 /sbin/mingetty tt&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3775  0.0  0.0  1496  424 tty5     S    Dec22   0:00 /sbin/mingetty tt&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;root      3776  0.0  0.0  1496  424 tty6     S    Dec22   0:00 /sbin/mingetty tt&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Desta lista necessito retirar a segunda coluna.&lt;br /&gt;&lt;br /&gt;Com o comando abaixo é possível obter somente as informações da segunda coluna.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:78%;" &gt;&lt;span style="font-family:courier new;"&gt;ps -aux | awk '{ print $2 }'&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Recebo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3399&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3403&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3414&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3432&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3452&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3464&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3481&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3569&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3594&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3610&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3639&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3648&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3659&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3669&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3693&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3703&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3735&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3746&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3747&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3748&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3756&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3760&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3772&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3773&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3774&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3775&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;3776&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;E qual a finalidade disso?&lt;br /&gt;&lt;br /&gt;Uma utilidade para o meu dia a dia, necessito matar os processos do Postgres.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:85%;"  &gt;ps -aux | grep postgres: | awk '{ print $2 } ' | while read l;  do echo 'kill ' $l ; done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ps -axu  - lista os processos&lt;br /&gt;&lt;br /&gt;grep postgres: - seleciona os processo postgres:&lt;br /&gt;&lt;br /&gt;awk '{ print $2 }' - retira a segunda coluna da lista de processo&lt;br /&gt;&lt;br /&gt;while read l - coloca na variável l o número do processo&lt;br /&gt;&lt;br /&gt;do echo 'kill' $l - escreve no monitor o comando kill número do processo. Caso deseje realmente apagar o processo, utilize o comando do kill $l.&lt;br /&gt;&lt;br /&gt;Ajudas de Carlos Eduardo de Andrade Brasileiro e Frederico  Meireles Palma&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-173807215348500840?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/173807215348500840/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=173807215348500840' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/173807215348500840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/173807215348500840'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/12/extrai-uma-coluna-de-uma-lista.html' title='Extrai uma coluna de uma lista'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-333811492516395798</id><published>2008-12-19T10:36:00.000-08:00</published><updated>2011-09-06T04:58:23.034-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Comando para apagar em lote</title><content type='html'>O meu problema é apagar um conjunto de arquivo por lote. Poderia ser utilizado o comando&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;rm *.pdf&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mas, caso existam muitos arquivos em uma pasta ou os arquivos estejam em pastas diferentes não é possível utilizar este comando.&lt;br /&gt;&lt;br /&gt;O comando abaixo procura todos os arquivos .pdf e apaga-os.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;find .  -name *.pdf | while read LINHA; do rm $LINHA ; done&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-333811492516395798?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/333811492516395798/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=333811492516395798' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/333811492516395798'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/333811492516395798'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/12/comando-para-pagar-em-lote.html' title='Comando para apagar em lote'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2649339682841188596</id><published>2008-11-19T05:38:00.000-08:00</published><updated>2008-11-19T05:40:39.154-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Busca arquivo diretorio Linux</title><content type='html'>Colaboração: Ricardo Jurczyk Pinheiro&lt;br /&gt;&lt;br /&gt;Data de Publicação: 19 de November de 2008&lt;br /&gt;&lt;br /&gt;Uma necessidade que tenho vez por outra, no Linux, é descobrir em que&lt;br /&gt;arquivo de configuração, dentro do /etc, devo mexer. Como o /etc tem vários&lt;br /&gt;diretórios, e dentro deles outros arquivos, acabei desenvolvendo uma solução&lt;br /&gt;"rápida e suja", que funciona muito bem:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  #!/bin/sh&lt;br /&gt;  #&lt;br /&gt;  # Pesquisa - Encontra um padrao dentro de uma lista de arquivos&lt;br /&gt;  # numa arvore de diretorios&lt;br /&gt;  # Autor: Ricardo Jurczyk Pinheiro - &lt;a href="mailto:ricardojpinheiro@ibest.com.br"&gt;ricardojpinheiro@ibest.com.br&lt;/a&gt;&lt;br /&gt;  # Versao 0.&lt;div id=":yq" class="ArwC7c ckChnd"&gt;&lt;wbr&gt;000000000000000000000000000000&lt;wbr&gt;000000000000000000000001&lt;br /&gt;  #&lt;br /&gt;  #&lt;br /&gt;  if [ $# -ne 2 ]; then&lt;br /&gt;        echo "$0 (palavra a ser procurada) (arvore de diretorios)"&lt;br /&gt;        exit 1&lt;br /&gt;  else&lt;br /&gt;        for nome in $(find $2 -type f | sort | uniq); do&lt;br /&gt;                echo $nome&lt;br /&gt;                cat $nome | grep $1&lt;br /&gt;        done&lt;br /&gt;  fi&lt;br /&gt;&lt;br /&gt;E basta fazer um pipe com o less, que resolve o problema de excesso de informações na tela.&lt;br /&gt;&lt;br /&gt;        Ricardo Jurczyk Pinheiro - Linux user #82838 - &lt;a href="http://estudiodaintrospeccao.blogspot.com/" target="_blank"&gt;http://estudiodaintrospeccao.&lt;wbr&gt;blogspot.com&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2649339682841188596?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2649339682841188596/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2649339682841188596' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2649339682841188596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2649339682841188596'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/11/busca-arquivo-diretorio-linux.html' title='Busca arquivo diretorio Linux'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2616155273550567718</id><published>2008-11-18T10:38:00.000-08:00</published><updated>2008-11-19T04:33:11.274-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Função em Postgres</title><content type='html'>&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;O meu problema é transformar um campo que retorna a informação da forma:&lt;br /&gt;&lt;br /&gt;"250077#;#251420#;#251000#;#250915#;#250840#;#251720#;#251320#;#251398#;#"&lt;br /&gt;&lt;br /&gt;em um lista da forma:&lt;br /&gt;&lt;br /&gt;"500625,500085,250760,250933,250050,250530,250210,250560,251430,251570,251100,250077,251420,251000,250915,250840,251720,251320,251398,251207,250205,251203,251365,251445,250720,250990,250940,250790,250980,250090,251270,251280,250937,250740,250230,250290,250280,250130,251580,251275,250250,250215,250435,250950,250120,250040,251510,352780,351670,350150,350140,311787,250270,251600,251590,250190,250270,251600,251590,250190,250960,250220,251450,250070,251330,251680,250960,250220,251450,250070,251330,251680,251560,250820,251593,250580,251272,251160,250520,250080,251150,250640,251500,"&lt;br /&gt;&lt;br /&gt;Para resolver isso criei uma função em PostgreSQL para executar esta tarefa:&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;CREATE or REPLACE FUNCTION lista_mun() RETURNS varchar AS '&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    mviews RECORD;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    lista varchar;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    lista := \'\';&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    FOR mviews IN select replace(resposta,\'#;#\',\',\') as mun&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         from dados.itemquest&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         where pergunta=\'p_mun_ref\' LOOP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         lista := lista ||  mviews.mun;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;      &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    RETURN lista;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;END;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;' LANGUAGE plpgsql;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Forma de utilização:&lt;br /&gt;   &lt;span style="color: rgb(255, 0, 0);"&gt;   select lista_mun()&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;A função acima tem um problema, como comparar o texto contendo número inteiros com um número inteiro.&lt;br /&gt;&lt;br /&gt;Assim reescrevi a função para que retornasse um vetor de inteiros:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;CREATE OR REPLACE FUNCTION dados.lista_mun()&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;  RETURNS integer[] AS&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;$BODY$&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;DECLARE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    mviews RECORD;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    lista varchar;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    return_arr text[];&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    lista = '';    &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    FOR mviews IN select replace(resposta,'#;#',',' ) as mun&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         from dados.itemquest&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         where pergunta='p_mun_ref' LOOP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;         lista := lista ||  mviews.mun;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;      &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    END LOOP;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    return_arr := '{' || lista || 0 ||  '}';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;   RETURN return_arr;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;END;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;$BODY$&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;  LANGUAGE 'plpgsql' VOLATILE;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Para utilizar esta função, é necessário transformar o vetor de inteiros para número inteiros individuais:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    select *&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;              from&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;               generate_series(1,array_upper(dados.lista_mun(),1)) as idx(i), &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;               dados.lista_mun() as arr(a)&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;Onde a função&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;array_upper(dados.lista_mun(),1) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt; = &lt;span style="color: rgb(0, 0, 0);"&gt;Retorna o tamanho do array&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt; generate_series(1,array_upper(dados.lista_mun(),1)) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;/span&gt; = &lt;span style="color: rgb(0, 0, 0);"&gt;Retorna número de 1 ao tamanho do array&lt;br /&gt;&lt;br /&gt;O uso final da função ficou assim:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;    select c.gid, MakePoint(c.longitudes,c.latidudese ) as the_geom&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;            from mapas.shp_munic c&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;            where c.ibge in &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;            (&lt;span style="font-weight: bold;"&gt;select arr.a[idx.i]&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;              from&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;               generate_series(1,array_upper(&lt;span style="color: rgb(204, 0, 0);"&gt;dados.lista_mun()&lt;/span&gt;,1)) as idx(i), &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;&lt;span style="font-weight: bold;"&gt;               dados.lista_mun() as arr(a)&lt;/span&gt;)&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2616155273550567718?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2616155273550567718/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2616155273550567718' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2616155273550567718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2616155273550567718'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/11/funo-em-postgres.html' title='Função em Postgres'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8228858541041868582</id><published>2008-11-10T10:40:00.000-08:00</published><updated>2008-11-10T10:44:01.057-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mapserver'/><title type='text'>Alguns configure para POSTGRES/POSTGIS/MAPSERVER/PHP</title><content type='html'>Para o POSTGIS&lt;br /&gt;./configure \&lt;br /&gt;--with-pgsql=/opt/PostgreSQL/8.3/bin/pg_config \&lt;br /&gt;--with-geos \&lt;br /&gt;--with-proj \&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para o PHP&lt;br /&gt;./configure \&lt;br /&gt;--with-apxs2=/usr/local/apache2/bin/apxs \&lt;br /&gt;--with-pgsql=/opt/PostgreSQL/8.3/bin \&lt;br /&gt; --enable-soap \&lt;br /&gt;--enable-zip \&lt;br /&gt;--with-gd \&lt;br /&gt;--with-jpeg-dir=/usr/local&lt;br /&gt;&lt;br /&gt;Para o MapServer&lt;br /&gt; ./configure \&lt;br /&gt; --with-wfs \&lt;br /&gt; --with-wfsclient \&lt;br /&gt; --with-wmsclient \&lt;br /&gt; --with-gdal=/usr/local/bin/gdal-config \&lt;br /&gt;--with-php=/usr/local/include/php \&lt;br /&gt; --with-mygis=yes \&lt;br /&gt; --with-postgis=/opt/PostgreSQL/8.3/bin/pg_config \&lt;br /&gt; --with-proj&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8228858541041868582?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8228858541041868582/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8228858541041868582' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8228858541041868582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8228858541041868582'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/11/alguns-configure-para.html' title='Alguns configure para POSTGRES/POSTGIS/MAPSERVER/PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1204788757541963566</id><published>2008-10-06T13:11:00.000-07:00</published><updated>2008-10-06T13:12:15.533-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Erro de Instalação</title><content type='html'>1 - Verifique se existe a biblioteca solicitada.&lt;br /&gt;      cd /&lt;br /&gt;      find . -name libc.so*&lt;br /&gt;&lt;br /&gt;2 - Caso exista a biblioteca o binário esta fazendo referencia a um Kernel especifico, então utilize o seguinte comando&lt;br /&gt;&lt;br /&gt;cp Install.bin Install.bak&lt;br /&gt;cat Install.bak | sed "s/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/" &gt; Install.bin&lt;br /&gt;rm Install.bak&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1204788757541963566?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1204788757541963566/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1204788757541963566' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1204788757541963566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1204788757541963566'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/10/erro-de-instalao.html' title='Erro de Instalação'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8210192435486364635</id><published>2008-10-06T11:12:00.001-07:00</published><updated>2008-10-06T11:12:29.041-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Versão Kernel SUSE</title><content type='html'>uname -r&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8210192435486364635?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8210192435486364635/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8210192435486364635' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8210192435486364635'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8210192435486364635'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/10/verso-kernel-suse.html' title='Versão Kernel SUSE'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-7377725638017183565</id><published>2008-09-26T06:12:00.000-07:00</published><updated>2008-09-26T06:14:38.784-07:00</updated><title type='text'>Um Olhar Sociotécnico sobre a Engenharia de Software</title><content type='html'>&lt;div&gt;As novas tecnologias modificam a forma e a substância do&lt;br /&gt;controle, da participação e da coesão social. Porém, ao fazê-lo, são também modificadas pela experiência social, de sorte que o técnico e o social constituem um movimento de "co-modificação", somente percebido por uma aproximação concomitantemente social e técnica, por um olhar sociotécnico. O artigo pretende apresentar algumas das principais características deste olhar, bem como discutir os desafios que coloca para a engenharia de software.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-7377725638017183565?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.seer.ufrgs.br/index.php/rita/article/view/rita_v14_n2_p199-219' title='Um Olhar Sociotécnico sobre a Engenharia de Software'/><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/7377725638017183565/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=7377725638017183565' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7377725638017183565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/7377725638017183565'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/09/httpwwwseerufrgsum-olhar-sociotcnico.html' title='Um Olhar Sociotécnico sobre a Engenharia de Software'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-956529044437253364</id><published>2008-09-02T17:48:00.001-07:00</published><updated>2008-09-02T17:52:30.208-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Init Level para Boot</title><content type='html'>/etc/inittab&lt;br /&gt;&lt;br /&gt;=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x=x&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;# /etc/inittab&lt;br /&gt;#&lt;br /&gt;# Copyright (c) 1996-2002 SuSE Linux AG, Nuernberg, Germany. All rights reserved.&lt;br /&gt;#&lt;br /&gt;# Author: Florian La Roche, 1996&lt;br /&gt;# Please send feedback to http://www.suse.de/feedback&lt;br /&gt;#&lt;br /&gt;# This is the main configuration file of /sbin/init, which&lt;br /&gt;# is executed by the kernel on startup. It describes what&lt;br /&gt;# scripts are used for the different run-levels.&lt;br /&gt;#&lt;br /&gt;# All scripts for runlevel changes are in /etc/init.d/.&lt;br /&gt;#&lt;br /&gt;# This file may be modified by SuSEconfig unless CHECK_INITTAB&lt;br /&gt;# in /etc/sysconfig/suseconfig is set to "no"&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;# The default runlevel is defined here&lt;br /&gt;id:5:initdefault:&lt;br /&gt;&lt;br /&gt;# First script to be executed, if not booting in emergency (-b) mode&lt;br /&gt;si::bootwait:/etc/init.d/boot&lt;br /&gt;&lt;br /&gt;# /etc/init.d/rc takes care of runlevel handling&lt;br /&gt;#&lt;br /&gt;# runlevel 0 is System halt (Do not use this for initdefault!)&lt;br /&gt;# runlevel 1 is Single user mode&lt;br /&gt;# runlevel 2 is Local multiuser without remote network (e.g. NFS)&lt;br /&gt;# runlevel 3 is Full multiuser with network&lt;br /&gt;# runlevel 4 is Not used&lt;br /&gt;# runlevel 5 is Full multiuser with network and xdm&lt;br /&gt;# runlevel 6 is System reboot (Do not use this for initdefault!)&lt;br /&gt;#&lt;br /&gt;l0:0:wait:/etc/init.d/rc 0&lt;br /&gt;l1:1:wait:/etc/init.d/rc 1&lt;br /&gt;l2:2:wait:/etc/init.d/rc 2&lt;br /&gt;l3:3:wait:/etc/init.d/rc 3&lt;br /&gt;#l4:4:wait:/etc/init.d/rc 4&lt;br /&gt;l5:5:wait:/etc/init.d/rc 5&lt;br /&gt;l6:6:wait:/etc/init.d/rc 6&lt;br /&gt;&lt;br /&gt;# what to do in single-user mode&lt;br /&gt;ls:S:wait:/etc/init.d/rc S&lt;br /&gt;~~:S:respawn:/sbin/sulogin&lt;br /&gt;&lt;br /&gt;# what to do when CTRL-ALT-DEL is pressed&lt;br /&gt;ca::ctrlaltdel:/sbin/shutdown -r -t 4 now&lt;br /&gt;&lt;br /&gt;# special keyboard request (Alt-UpArrow)&lt;br /&gt;# look into the kbd-0.90 docs for this&lt;br /&gt;kb::kbrequest:/bin/echo "Keyboard Request -- edit /etc/inittab to let this work."&lt;br /&gt;&lt;br /&gt;# what to do when power fails/returns&lt;br /&gt;pf::powerwait:/etc/init.d/powerfail start&lt;br /&gt;pn::powerfailnow:/etc/init.d/powerfail now&lt;br /&gt;#pn::powerfail:/etc/init.d/powerfail now&lt;br /&gt;po::powerokwait:/etc/init.d/powerfail stop&lt;br /&gt;&lt;br /&gt;# for ARGO UPS&lt;br /&gt;sh:12345:powerfail:/sbin/shutdown -h now THE POWER IS FAILING&lt;br /&gt;&lt;br /&gt;# getty-programs for the normal runlevels&lt;br /&gt;# &lt;id&gt;:&lt;runlevels&gt;:&lt;action&gt;:&lt;process&gt;&lt;br /&gt;# The "id" field MUST be the same as the last&lt;br /&gt;# characters of the device (after "tty").&lt;br /&gt;1:2345:respawn:/sbin/mingetty --noclear tty1&lt;br /&gt;2:2345:respawn:/sbin/mingetty tty2&lt;br /&gt;3:2345:respawn:/sbin/mingetty tty3&lt;br /&gt;4:2345:respawn:/sbin/mingetty tty4&lt;br /&gt;5:2345:respawn:/sbin/mingetty tty5&lt;br /&gt;6:2345:respawn:/sbin/mingetty tty6&lt;br /&gt;#&lt;br /&gt;#S0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt102&lt;br /&gt;#cons:1235:respawn:/sbin/smart_agetty -L 38400 console&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;# Note: Do not use tty7 in runlevel 3, this virtual line&lt;br /&gt;# is occupied by the programm xdm.&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;# This is for the package xdmsc, after installing and&lt;br /&gt;# and configuration you should remove the comment character&lt;br /&gt;# from the following line:&lt;br /&gt;#7:3:respawn:+/etc/init.d/rx tty7&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# modem getty.&lt;br /&gt;# mo:235:respawn:/usr/sbin/mgetty -s 38400 modem&lt;br /&gt;&lt;br /&gt;# fax getty (hylafax)&lt;br /&gt;# mo:35:respawn:/usr/lib/fax/faxgetty /dev/modem&lt;br /&gt;&lt;br /&gt;# vbox (voice box) getty&lt;br /&gt;# I6:35:respawn:/usr/sbin/vboxgetty -d /dev/ttyI6&lt;br /&gt;# I7:35:respawn:/usr/sbin/vboxgetty -d /dev/ttyI7&lt;br /&gt;&lt;br /&gt;# end of /etc/inittab&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-956529044437253364?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/956529044437253364/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=956529044437253364' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/956529044437253364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/956529044437253364'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/09/init-level-para-boot.html' title='Init Level para Boot'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5320575620561819582</id><published>2008-07-12T05:34:00.000-07:00</published><updated>2008-07-12T05:36:31.194-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Programação'/><title type='text'>Programção Portão</title><content type='html'>Instruções de Programação para central simplesV5.&lt;br /&gt;Observações a serem respeitadas, antes do início da programação.&lt;br /&gt;Cuidado com o passo 10, porque após o mesmo o motor se liga automaticamente.&lt;br /&gt;Durante o reconhecimento automático do curso , (passo 11) os transformadores ficam sem funcionar, apenas podendo ser parado através da botoeira.&lt;br /&gt;&lt;br /&gt;Iniciando a programação&lt;br /&gt;&lt;br /&gt;1.Coloque o jumper em (programação), o led vermelho se acende.&lt;br /&gt;2.Aguarde 2 segundos, e o led verde piscará 5 vezes, mantendo o led vermelho aceso.&lt;br /&gt;3.Caso não seja necessário apagar por completo a memória, pule para o passo 4, em caso contrário, limpando assim, todos os transmissores e configurações, proceda da seguinte forma: Pressione a tecla (BOT) por 5 segundos, até que  comece a piscar o led verde.&lt;br /&gt;4.Este estágio é para a central aprender o transmissores, que pode ser por botão individual, até 2 botões, ou transmissores.&lt;br /&gt;5.Pressione o botão do transmissor necessário, feito isso o led verde começa a piscar, neste momento a central aguarda que você confirme o transmissor, pressionando a tecla (BOT).&lt;br /&gt;6.Repita o passo 5, por todos os transmissores utilizados.&lt;br /&gt;7.Retire o jumper de (programação), observando o seguinte, se você não continuar o processo em 8 segundos, a central reinicia automaticamente, em modo normal de funcionamento.&lt;br /&gt;8.Pressione brevemente a tecla (BOT) para indicar para a central prosseguir o processo de programação, como aprendizagem dos tempos de fechamento automático e de luz de garagem.&lt;br /&gt;9.Agora a central pisca o led verde e espera que seja programado o tempo de fechamento automático, ou semi-automático, pressionando a tecla (BOT) pelo tempo desejado no fechamento automático (mantendo a mesma pressionado), ou pressione  por menos de 5 segundos, e a central atenderá como semi-automático.&lt;br /&gt;10.Agora está aceso o led vermelho e piscando o led verde, e a central esta esperando o tempo da luz de garagem, caso exista o opcional instalado, e o processo é similar ao descrito acima, pressione a tecla (BOT) pelo tempo desejado a luz de garagem, ou pressione por 5 segundos, e a central entenderá como dispositivo não estalado. (CUIDADO AGORA O MOTOR VAI LIGAR).&lt;br /&gt;11.A partir de agora o  motor liga automaticamente inicialmente para fechar, caso esteja no meio.&lt;br /&gt;12.Após o fechamento total do portão, o mesmo pára e inicia a abertura até o final, quando obtém as informações de tempo do curso e peso do portão. OBS: neste passo os transmissores estarão sem ação, e se for necessário parar o portão em programação, utilize a botoeira.&lt;br /&gt;13.Terminou a abertura a central se inicia automaticamente.&lt;br /&gt;Considerações da central&lt;br /&gt;Para dasabilitar temporariamente o fechamento automático, para o portão com o controle remoto, segurando pressionado o botão por mais de 2 segundos, a central responderá com um piscar no led vermelho e uma piscada na luz de garagem quando existir. Voltando a se reprogramar log após o próximo funcionamento da mesma&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5320575620561819582?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5320575620561819582/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5320575620561819582' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5320575620561819582'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5320575620561819582'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/07/programo-porto.html' title='Programção Portão'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5063593941745277205</id><published>2008-07-02T10:38:00.001-07:00</published><updated>2011-01-28T10:51:57.345-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PHP'/><title type='text'>Apagar arquivos em PHP</title><content type='html'>// apaga todos os arquivos do diretorio /tmp&lt;br /&gt;&lt;br /&gt;$files = glob('tmp/*.*');&lt;br /&gt;array_map('unlink', $files);&lt;br /&gt;&lt;br /&gt;/**********************************************************/&lt;br /&gt;// O codigo abaixo apaga todos os arquivos do diretorio temp que foram&lt;br /&gt;// criado a mais de 5 minutos&lt;br /&gt;&lt;br /&gt;$afiles = glob('temp/*.*');&lt;br /&gt;array_map('unlink', array_filter($afiles, "cinco_minutos"));&lt;br /&gt;&lt;br /&gt;function cinco_minutos($var)&lt;br /&gt;{&lt;br /&gt;    $tempo = time() - (5 * 60);  // Horario atual menos 5 minutos&lt;br /&gt;    return(filectime($var) &lt; $tempo);&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5063593941745277205?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5063593941745277205/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5063593941745277205' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5063593941745277205'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5063593941745277205'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/07/apagar-arquivos-em-php.html' title='Apagar arquivos em PHP'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-495781748694569222</id><published>2008-06-23T03:22:00.000-07:00</published><updated>2008-06-23T03:23:40.838-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Educação Corporativa'/><title type='text'>Fábula da formiga e consultores</title><content type='html'>Todos os dias, a formiga chegava cedinho ao escritório e pegava duro no trabalho. Era produtiva e feliz.&lt;br /&gt;O gerente marimbondo estranhou a formiga trabalhar sem supervisão. Se ela era produtiva sem supervisão, seria ainda mais se fosse supervisionada.  E colocou uma barata, que preparava belíssimos relatórios e tinha muita experiência, como supervisora. A primeira preocupação da barata foi a de padronizar o horário de entrada e saída da formiga. Logo, a barata precisou de uma secretária para ajudar a preparar os relatórios e contratou também uma aranha para organizar os arquivos e controlar as ligações telefônicas. O marimbondo ficou encantado com os relatórios da barata e pediu também gráficos com indicadores e análise das tendências que eram mostradas em reuniões. A barata, então, contratou uma mosca, e comprou um computador com impressora colorida. Logo, a formiga produtiva e feliz, começou a se lamentar de toda aquela movimentação de papéis e reuniões!&lt;br /&gt;O marimbondo concluiu que era o momento de criar a função de gestor para a área onde a formiga produtiva e feliz, trabalhava. O cargo foi dado a uma cigarra, que mandou colocar carpete no seu escritório e comprar uma cadeira especial. A nova gestora cigarra logo precisou de um computador e de uma assistente (sua assistente na empresa anterior) para ajudá-la a preparar um plano estratégico de melhorias e um controle do orçamento para a área onde trabalhava a formiga, que já não cantarolava mais e cada dia se tornava mais chateada. A cigarra, então, convenceu o gerente marimbondo, que era preciso fazer um estudo de clima. Mas, o marimbondo, ao rever as cifras, se deu conta de que a unidade na qual a formiga trabalhava já não rendia como antes e contratou a coruja, uma prestigiada consultora, muito famosa, para que fizesse um diagnóstico da situação. A coruja permaneceu três meses nos escritórios e emitiu um volumoso relatório, com vários volumes que concluía : "há muita gente nesta empresa".&lt;br /&gt;E assim, o gerente geral seguiu o conselho da consultoria, já que tinha pago um preço bem alto pelo trabalho, e demitiu a Fomiga que andava desmotivada e aborrecida..."&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-495781748694569222?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/495781748694569222/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=495781748694569222' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/495781748694569222'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/495781748694569222'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/06/fbula-da-formiga-e-consultores.html' title='Fábula da formiga e consultores'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1720522898167242245</id><published>2008-05-21T04:33:00.000-07:00</published><updated>2008-05-21T04:36:43.580-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Update com Select</title><content type='html'>A expressão abaixo realiza uma atualização no campo &lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;profissional_de_nivel_medio&lt;/span&gt;&lt;/span&gt; com o resultado da expressão &lt;span style="font-style: italic; font-weight: bold;"&gt;select&lt;/span&gt;. Nesta expressão faz-se uma ligação da tabela que deve ser alterada com a tabela consultada em &lt;span style="font-weight: bold; font-style: italic;"&gt; and dados.equipe.id_cras=tmp.adequacao.id_cras.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;update tmp.adequacao set &lt;span style="color: rgb(255, 0, 0);"&gt;profissional_de_nivel_medio&lt;/span&gt; = (&lt;br /&gt;  select count(id_cras)&lt;br /&gt;     from dados.equipe&lt;br /&gt;     where formacao='Profissional de nível médio'&lt;br /&gt;     &lt;span style="color: rgb(255, 0, 0);"&gt;and dados.equipe.id_cras=tmp.adequacao.id_cras&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1720522898167242245?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1720522898167242245/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1720522898167242245' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1720522898167242245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1720522898167242245'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/05/update-com-select.html' title='Update com Select'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-1876064082681107765</id><published>2008-05-20T03:46:00.000-07:00</published><updated>2008-05-21T04:32:48.062-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Procedure postgres</title><content type='html'>CREATE FUNCTION sesan.proposta_resumo() RETURNS void AS&lt;br /&gt;$$&lt;br /&gt;begin&lt;br /&gt;drop table sesan.proposta_tmp;&lt;br /&gt;&lt;br /&gt;create table sesan.proposta_tmp as&lt;br /&gt;select proposta_id, protocolo, titulo, edital, ibge, usuario from sesan.proposta;&lt;br /&gt;&lt;br /&gt;alter table sesan.proposta_tmp add column  elegivel varchar(10) ;&lt;br /&gt;alter table sesan.proposta_tmp add column  habilitado  varchar(10) ;&lt;br /&gt;&lt;br /&gt;update sesan.proposta_tmp&lt;br /&gt;set habilitado = resposta&lt;br /&gt;from sesan.proposta_valores&lt;br /&gt;where pergunta = 'habilitado'&lt;br /&gt;and sesan.proposta_tmp.proposta_id =sesan.proposta_valores.proposta_id;&lt;br /&gt;&lt;br /&gt;update sesan.proposta_tmp&lt;br /&gt;set elegivel = resposta&lt;br /&gt;from sesan.proposta_valores&lt;br /&gt;where pergunta = 'elegivel_valor'&lt;br /&gt;and sesan.proposta_tmp.proposta_id =sesan.proposta_valores.proposta_id;&lt;br /&gt;end;$$&lt;br /&gt;LANGUAGE plpgsql;&lt;br /&gt;ALTER FUNCTION sesan.proposta_resumo() OWNER TO sesan_user;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-1876064082681107765?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/1876064082681107765/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=1876064082681107765' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1876064082681107765'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/1876064082681107765'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/05/procedure-postgres.html' title='Procedure postgres'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-9071305365549502119</id><published>2008-05-15T11:32:00.000-07:00</published><updated>2008-05-15T11:35:43.646-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Inserção com Select</title><content type='html'>A expressão SQL abaixo executa uma inserção no banco de dados copiando os registros já existentes no id_detail = 1.&lt;br /&gt;&lt;br /&gt;O resultado será um conjunto de registros com id_detail=2 e os demais campos iguais aos registros com id_detail = 1.&lt;br /&gt;&lt;br /&gt;insert into mapas.map_detail&lt;br /&gt; ( id_mapa ,  ordem ,  nome_camada ,  tipo_conexao,  conexao_usuario ,  conexao_senha ,  conexao_dbname ,  conexao_host ,  conexao_port ,  sql ,  tipo_mapa ,  projecao ,  color_red ,  color_green,  color_blue ,  outline_red,  outline_green ,  outline_blue ,  symbol,  symbolsize ,  labelitem ,  lablefont ,  labelsize )&lt;br /&gt;  select   &lt;span style="color:#ff0000;"&gt;2 as id_mapa&lt;/span&gt; ,  ordem ,  nome_camada ,  tipo_conexao,  conexao_usuario ,  conexao_senha ,  conexao_dbname ,  conexao_host ,  conexao_port ,  sql ,  tipo_mapa ,  projecao ,  color_red ,  color_green,  color_blue ,  outline_red,  outline_green ,  outline_blue ,  symbol,  symbolsize ,  labelitem ,  lablefont ,  labelsize &lt;br /&gt;from mapas.map_detail&lt;br /&gt;where &lt;span style="color:#ff0000;"&gt;id_mapa=1&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-9071305365549502119?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/9071305365549502119/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=9071305365549502119' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/9071305365549502119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/9071305365549502119'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/05/insero-com-select.html' title='Inserção com Select'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4923282391351639642</id><published>2008-05-04T06:35:00.000-07:00</published><updated>2008-05-04T06:37:30.448-07:00</updated><title type='text'>Experiência para classificar propostas de editais nacionais utilizando indicadores georrefenciamento</title><content type='html'>Descrever a experiência com classificação de propostas para editais nacionais utilizando indicadores e dados de georrefenciamento.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4923282391351639642?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4923282391351639642/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4923282391351639642' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4923282391351639642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4923282391351639642'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/05/experincia-para-classificar-propostas.html' title='Experiência para classificar propostas de editais nacionais utilizando indicadores georrefenciamento'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-8711836722870620000</id><published>2008-05-04T06:26:00.000-07:00</published><updated>2008-05-04T06:35:06.314-07:00</updated><title type='text'>O que foi possível descobrir no programa Bolsa Família com Georreferenciamento</title><content type='html'>Este artigo se propõe a descrever algumas caracterísitcas do programa Bolsa Família que foi possível descobrir com ferramentas de Georreferenciamento.&lt;br /&gt;&lt;br /&gt;Descrever as características de um sistema de georreferenciamento ou geoprocessamento.&lt;br /&gt;&lt;br /&gt;Descrever as  finalidades de indicadores&lt;br /&gt;&lt;br /&gt;Algumas "verdades":&lt;br /&gt;&lt;br /&gt;O programa esta crescendo no Brasil. Apresentar os locais onde o programa esta diminuindo de beneficiários.&lt;br /&gt;&lt;br /&gt;Apresentar a queda da tranferência per carpita na expansão do programa.&lt;br /&gt;&lt;br /&gt;Algumas peculiaridades. É verdade que se transfere mais dinheiro para São Paulo em Bolsa Família que Fundo de Transferência Municipal?&lt;br /&gt;&lt;br /&gt;Existe um município chamado Pinto Bandeira no Rio Grade do Sul que não existe mais, porém há ainda transferência de renda para lá.&lt;br /&gt;&lt;br /&gt;A cobertura do programa ultrapassa 90% na maioria dos municípios, mas como funciona isto nos municípios maiores?&lt;br /&gt;&lt;br /&gt;A estimava de probreza é maior que 90%  em quantos municípios?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-8711836722870620000?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/8711836722870620000/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=8711836722870620000' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8711836722870620000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/8711836722870620000'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/05/o-que-foi-possvel-descobrir-no-programa.html' title='O que foi possível descobrir no programa Bolsa Família com Georreferenciamento'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4634597411200525944</id><published>2008-04-11T04:07:00.000-07:00</published><updated>2008-04-11T04:41:39.788-07:00</updated><title type='text'>Subsídios para organizar avaliações da ação governamental</title><content type='html'>"Uma avaliação cumulativa que não seja formativa, isto é que não contribua para tomada de decisão aprimorada é irrelevante e constiui uma perda de recursos."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Para ser eficiente a avaliação precisa ser sustentada por uma cultura de aprendizado: sem esta, corre o risco de se tornar um exercício irrelevante, ou pior, uma &lt;strong&gt;&lt;span style="font-size:130%;"&gt;restrição burocrática sufocante&lt;/span&gt;&lt;/strong&gt;"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"O monitoramento é um processo sistemático e contínuo que, produzindo informações sintéticas e em tempo eficaz, permite a rápida avaliação situacional e a intervenção oportuna que confirma ou corrige as ações monitoradas"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Quem não monitora os problemas que deve resolver e o resultado das ações com as quais pretente enfrentá-las não sabe o que acontece por conta do seu agir e nem que mudanças provocou com sua ação."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Para monitorar é necessário tornar preciso o problema, demarcá-lo e medi-lo com rigor, conhecer suas principais determinações e desenhar ações específicas com o poder de eliminar ou minimizar as causas fundamentais que o geram. Ao se implementarem as ações, deverão ser produzidos indicadores pertinentes - porque são úteis para quem responde por sua execução - e, portanto, passíveis de serem trabalhados (analisados e avalidados) para poder informar a quem tem o dever de coordenar as ações e poder corrigi-las, caso necessário. Somente problemas bem definidos e ações bem desenhadas e programadas, ambos identificados por preciosos e detalhados indicadores, são passíveis de monitoramento, podendo ser avaliados de forma conseqüente e oportuna."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Acampanhamentos e avaliações superficiais sob a forma de relatórios não orientados para a tomada de decisão, produzidos com enormes lapsos de tempo, sem nenhuma sintonia com os processos reais exigentes da atenção e intervenção dos gerentes de programas e dos condutores do plano."&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Quem monitora, avalia. Quem avalia, confirma ou corrige, exercendo o poder de dirigir consciente e direcionalmente"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"O monitoramento requer a produção sistemática e automatizada de informações relevantes,&lt;br /&gt;precisas, sintéticas"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Essas informações existirão apenas quando a ação tiver sido desenhada e programada de forma a permitir que se cumpra a exigência de produzir informações apropriadas e a um ritmo adequado à tomada de decisões. E isso se consegue criando condições favoráveis (técnica e informacionalmente) para se estabelecer a obrigatoriedade do registro das informações necessárias que compõem o sistema de monitoramento. "&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SISTEMA DE MONITORAMENTO&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;BEM DEFINIDO. No monitoramento, &lt;span style="color:#ff0000;"&gt;o usuário é um ator concreto&lt;/span&gt;, atual, muito bem definido, que &lt;span style="color:#ff0000;"&gt;necessita de informações para orientar a ação cotidiana&lt;/span&gt;, para conhecer seus resultados e compará-los com o planejado.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ULTRA-SELETIVA. Os sistemas de monitoramento são projetados para atender um usuário concreto, responsável por um plano/programa/projeto específico.&lt;span style="color:#ff0000;"&gt; A informação necessária é ultra-seletiva.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;INFORMAÇÃO EM TEMPO EFICAZ.O monitoramento tem que atuar em tempo eficaz e, &lt;span style="color:#ff0000;"&gt;no limite, em tempo real, pois é usado para corrigir com oportunidade ações em andamento.&lt;/span&gt; Informação fora do prazo eficaz desinforma.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PERECÍVEL.&lt;span style="color:#cc0000;"&gt; O monitoramento serve como ‘feed back’ para a ação, produzindo informações perecíveis.&lt;/span&gt; Se chegarem fora do tempo terão valor igual ao de um jornal velho.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PRODUÇÃO DESCENTRALIZADA E USO ESPECÍFICO. O monitoramento é totalmente descentralizado, produzindo informações que permitam corrigir oportunamente ações no nível em que ocorram. &lt;span style="color:#ff0000;"&gt;Seu uso é muito particular para as necessidades do usuário.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;INDICADORES E SINAIS. &lt;span style="color:#ff0000;"&gt;O monitoramento opera com indicadores e sinais significativos para um usuário específico. Resultam de um processamento complexo das informações básicas e é dirigido para atender necessidades decisórias referentes aos planos/programas conduzidos pelo usuário.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Os sistemas de informações tradicionais, baseados em estatísticas e em registros descontínuos e inorgânicos, muitas vezes quase aleatórios, &lt;strong&gt;&lt;span style="color:#ff0000;"&gt;tentam oferecer muita informação não pertinente e não processada.&lt;/span&gt;&lt;/strong&gt; Desse modo, provocam uma congestão no sistema sensorial das organizações e, “em último termo, &lt;span style="color:#ff0000;"&gt;acabam por desinformar ao dirigente&lt;/span&gt;. Muitas antenas anulam a capacidade e nitidez de recepção da informação que importa. Se confunde a enorme massa de informação gerada na base, que constitui a matéria-prima informativa que deve ser processada pelo monitoramento, &lt;span style="color:#ff0000;"&gt;&lt;strong&gt;com o número reduzido de informações relevantes que, mediante filtros inteligentes, geram os sinais que devem guiar o processo de direção.&lt;/strong&gt;&lt;/span&gt; O sistema de monitoramento deve ser capaz de manejar em forma ágil e flexível uma grande massa de informação sobre a gestão de uma organização pública, reduzindo esta grande massa que desinforma por sobrecarga de &lt;span style="color:#ff0000;"&gt;&lt;strong&gt;dados a um grupo reduzido de sinais e informação filtrada e inteligente&lt;/strong&gt;&lt;/span&gt;”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Assim como um alto dirigente responde pelo conjunto do plano, um gerente é o responsável pelo enfrentamento global do problema que o programa busca resolver. Isso significa que a ele cabe &lt;span style="color:#ff0000;"&gt;coordenar o conjunto de ações concebidas como necessárias e suficientes, para que sejam implementadas de forma convergente, na seqüência temporal apropriada, com a intensidade adequada, atingindo as causas críticas do problema. &lt;/span&gt;Da mesma forma, o alto dirigente precisa saber, no seu nível, do andamento global do plano para poder conduzi-lo com propriedade, tomando as decisões corretas, no tempo certo. Para assim procederem, &lt;strong&gt;&lt;span style="color:#000099;"&gt;é imprescindível que estejam, ambos, permanentemente aptos a tomarem as decisões necessárias em cada momento que elas se apresentarem, com segurança e oportunidade.&lt;/span&gt;&lt;/strong&gt; Isso se concretiza com contínuas avaliações de desempenho.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;“Como se consegue isso?&lt;br /&gt;A resposta é simples: estando informado sobre tudo o que é importante, para poder avaliar e agir. Mas alcançar essa condição não é algo simples. &lt;span style="color:#ff0000;"&gt;Supõe que as informações de base (menor unidade operativa de cada ação) estejam sendo registradas, agrupadas (para conformar um conjunto significativo), agregadas (para compor tarefas e, posteriormente ações), relacionadas (para construir os indicadores), analisadas e avaliadas.&lt;/span&gt; Importa, também, estar informado sobre o contexto no qual se desenvolvem as ações &lt;span style="color:#ff0000;"&gt;(restrições, imprevistos, surpresas, oportunidades)&lt;/span&gt;, pois a informação (ou indicador) somente ganha sentido e torna-se inteligível quando referida ao cenário no qual se realizou. Ademais, é fundamental dispor de informações em tempo oportuno para poder agir com eficácia e, é bom lembrar, as ações acontecem em ritmos de tempo diferentes, exigindo decisões em tempos também distintos.”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Origem "Subsídios para Organizar Avaliações da Ação Governamental"&lt;br /&gt;Ronaldo Coutinho Garcia&lt;br /&gt;Brasília, janeiro de 2001&lt;br /&gt;&lt;br /&gt;ISSN 1415-4765&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4634597411200525944?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4634597411200525944/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4634597411200525944' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4634597411200525944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4634597411200525944'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2008/04/subsdios-para-organizar-avaliaes-da-ao.html' title='Subsídios para organizar avaliações da ação governamental'/><author><name>Caio Nakashima</name><uri>https://profiles.google.com/109311585413346640637</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-vTihxkbelJ4/AAAAAAAAAAI/AAAAAAAAAAA/XvzHXV_7UMg/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4078036716831059808</id><published>2007-11-20T05:05:00.000-08:00</published><updated>2007-11-20T05:15:47.760-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>Reinicia o POSTGRESQL</title><content type='html'>-- Procurando o número do PID do postgresql / POSTMASTER&lt;br /&gt;&lt;br /&gt;ps -aux  grep postm&lt;br /&gt;&lt;br /&gt;-- Com o número do PID, reiniciar o processo.&lt;br /&gt;&lt;br /&gt;kill -HUP &lt;processo&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4078036716831059808?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4078036716831059808/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4078036716831059808' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4078036716831059808'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4078036716831059808'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/reinicia-o-postgresql.html' title='Reinicia o POSTGRESQL'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-4934579177009935611</id><published>2007-11-19T15:56:00.000-08:00</published><updated>2007-11-19T15:59:42.276-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ajax'/><title type='text'>Ajax</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Enviando uma requisição ao servidor&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para enviar uma requisição ao servidor utiliza-se o método open() e o método send().&lt;br /&gt;&lt;br /&gt;O método open() requer três argumentos.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;O primeiro argumento define qual método utilizar quando estiver enviando a requisição (GET ou POST). &lt;/li&gt;&lt;li&gt;O segundo argumento especifica a URL do script no servidor. &lt;/li&gt;&lt;li&gt;O terceiro argumento especifica que a requisição deve ser manipulada assincronamente. &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;O método send() envia a requisição para o servidor. Se assumir que os arquivos HTML e PHP estão na mesma pasta, o código pode ficar:&lt;br /&gt;&lt;br /&gt;   &lt;p class="CdigoExemplo"&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp.open("GET","&lt;span style="color: rgb(255, 0, 0);"&gt;time.asp&lt;/span&gt;",true);&lt;/span&gt;&lt;br /&gt;&lt;span style="" lang="PT-BR"&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp.send(null);&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoBodyText"&gt;&lt;span style="" lang="PT-BR"&gt;A função AJAX será executada quando o usuário digita algo no campo nome. O arquivo testeAjax.html agora fica parecido com o seguinte código:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="font-family: times new roman;"&gt;&amp;lt;html&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;body&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;function ajaxFunction()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  var xmlHttp;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  try&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    // Firefox, Opera 8.0+, Safari&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp=new XMLHttpRequest();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  catch (e)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    // Internet Explorer&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    try&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    catch (e)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      try&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      catch (e)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        alert("Seu navegador não suporta AJAX!");&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        return false;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp.onreadystatechange=function()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      if(xmlHttp.readyState==4)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        document.myForm.time.value=xmlHttp.responseText;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;        }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp.open("GET","hora.php",true);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    xmlHttp.send(null);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;form name="myForm"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  Nome: &amp;lt;input type="text"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  onkeyup="ajaxFunction();" name="nome" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;  Hora: &amp;lt;input type="text" name="time" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;/form&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-4934579177009935611?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/4934579177009935611/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=4934579177009935611' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4934579177009935611'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/4934579177009935611'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/ajax.html' title='Ajax'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5936637102510257892</id><published>2007-11-12T03:57:00.000-08:00</published><updated>2007-11-19T15:51:36.539-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ajax'/><title type='text'>Primeira Aplicação</title><content type='html'>Primeiro, será criado um formulário padrão HTML com dois campos: nome e hora. O campo nome será preenchido pelo usuário e o campo hora será preenchido utilizando-se AJAX. O arquivo HTML terá o nome “testeAjax.html”, e seu conteúdo será:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;  &amp;lt;form name="myForm"&amp;gt;&lt;br /&gt;    Name: &amp;lt;input type="text" name="username" /&amp;gt;&lt;br /&gt;    Time: &amp;lt;input type="text" name="time" /&amp;gt;&lt;br /&gt;  &amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Destaca-se que o formulário não possui o botão Submit.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Suporte AJAX do navegador&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;A chave do AJAX é o objeto XMLHttpRequest.&lt;br /&gt;&lt;br /&gt;Navegadores diferentes utilizam métodos diferentes para criar o objeto XMLHttpRequest&lt;br /&gt;&lt;br /&gt;Internet Explorer utiliza um ActiveXObject, enquanto que outros navegadores utilizam um objeto JavaScript chamado XMLHttpRequest.&lt;br /&gt;&lt;br /&gt;Para criar este objeto e trabalhar com navegadores diferentes, será utilizado o comando “try and catch”.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;span &amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt;function ajaxFunction()&lt;br /&gt;{&lt;br /&gt;var xmlHttp;&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt; // Firefox, Opera 8.0+, Safari&lt;br /&gt; xmlHttp=new XMLHttpRequest();&lt;br /&gt;}&lt;br /&gt;catch (e)&lt;br /&gt;{&lt;br /&gt; // Internet Explorer&lt;br /&gt; try&lt;br /&gt; {&lt;br /&gt;   xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");&lt;br /&gt; }&lt;br /&gt; catch (e)&lt;br /&gt; {&lt;br /&gt;   try&lt;br /&gt;   {&lt;br /&gt;     xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");&lt;br /&gt;   }&lt;br /&gt;   catch (e)&lt;br /&gt;   {&lt;br /&gt;     alert("Seu navegador não suporta AJAX!");&lt;br /&gt;     return false;&lt;br /&gt;   }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&amp;gt;/script&amp;gt;&lt;br /&gt;&amp;gt;form name="myForm"&amp;gt;&lt;br /&gt;Nome: &amp;lt;input name="nome"&amp;gt;&lt;br /&gt;Time: &amp;lt;input name="time"&amp;gt;&lt;br /&gt;&amp;gt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;&lt;br /&gt;Primeiro cria-se uma variável xmlHttp para manter o objeto XMLHttpRequest. Então tenta-se criar o objeto com XMLHttp=new XMLHttpRequest(). Isto serve para os navegadores Firefox, Opera e Safári. Se falhar tenta-se com xmlHttp=new ActiveXObject("Msxml2.XMLHTTP") que serve para o Internet Explorer 6.0+, se também falhar, tentar xmlHttp=new ActiveXObject("Microsoft.XMLHTTP") que serve para o Internet Explorer 5.5+.&lt;br /&gt;&lt;br /&gt;Se nenhum dos três métodos funcionarem, o usuário possui um navegador muito desatualizado deverá ser avisado que não suporta AJAX.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;A propriedade onreadystatechange&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;Depois de uma requisição para o servidor, precisa-se uma função que possa receber o dado que é retornado pelo servidor. A propriedade onreadystatechange armazena a função que processará a resposta do servidor. O código abaixo define uma função vazia e inicializa a propriedade onreadystatechange ao mesmo tempo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;font-family:courier new;" &gt;   xmlHttp.onreadystatechange=function()&lt;br /&gt;  {&lt;br /&gt;       // Deve-se escrever um código&lt;br /&gt;   }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;font-family:Courier New;" &gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;A propriedade readyState&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;A propriedade readyState carrega a situação (status) da reposta do servidor (server’s reponse). Cada vez que muda o valor de readyState, a função onreadystatechange será executada.&lt;br /&gt;&lt;br /&gt;Tabela de possíveis valores para a propriedade de onreadystatechange.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_cKoC6Fegguw/R0IYH2bpCPI/AAAAAAAAAAM/auUv1zKyLhc/s1600-h/TabelaOnReadyStateChange.bmp"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_cKoC6Fegguw/R0IYH2bpCPI/AAAAAAAAAAM/auUv1zKyLhc/s320/TabelaOnReadyStateChange.bmp" alt="" id="BLOGGER_PHOTO_ID_5134693048305387762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 12pt; font-family: georgia;" lang="PT-BR"&gt;No exemplo abaixo, apresenta-se um teste (&lt;i style=""&gt;if&lt;/i&gt;) na função &lt;b style=""&gt;&lt;i style=""&gt;onreadystatechange&lt;/i&gt;&lt;/b&gt; para testar se a resposta esta completa, ou seja, que o dado foi recebido.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: times new roman;"&gt;   xmlHttp.onreadystatechange=function()&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;   {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      if(xmlHttp.readyState==4)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;      {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;         // Recebido dos dados do servidor.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;       }&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: times new roman;"&gt;    }&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-family: verdana;"&gt;A propriedade responseText&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family: verdana;"&gt;O dados enviado de volta do servidor pode ser recuperado com a propriedade responseText. No exemplo será colocado a hora no campo de entrada na propriedade responseTex&lt;/span&gt;t.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;xmlHttp.onreadystatechange=function()&lt;br /&gt;  {&lt;br /&gt;  if(xmlHttp.readyState==4)&lt;br /&gt;    {&lt;br /&gt;    document.myForm.time.value=xmlHttp.responseText;&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5936637102510257892?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5936637102510257892/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5936637102510257892' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5936637102510257892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5936637102510257892'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/primeira-aplicao.html' title='Primeira Aplicação'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp0.blogger.com/_cKoC6Fegguw/R0IYH2bpCPI/AAAAAAAAAAM/auUv1zKyLhc/s72-c/TabelaOnReadyStateChange.bmp' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-3908600541505822713</id><published>2007-11-12T03:49:00.000-08:00</published><updated>2007-11-12T03:56:42.434-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ajax'/><title type='text'>Ajax - Introdução</title><content type='html'>&lt;p&gt;AJAX é acrônimo de Asynchronous JavaScript And XML. É um tipo de programação que se tornou popular in 2005 pela Google (com Google Suggest). AJAX não é uma nova linguagem de programação, mas uma nova forma de utilizar os padrões existentes.&lt;/p&gt;&lt;p&gt;Com o AJAX se pode criar aplicações WEB melhores, mais rápidos e mais amigáveis. AJAX é baseado em JavaScript e requisições HTTP.&lt;/p&gt;&lt;p&gt;Com AJAX, o JavaScript se comunica diretamente com o servidor utilizando o objeto XMLHttpRequest do JavaScript. Com este objeto se pode trocar dados com um servidor WEB sem a necessidade de recarregar a página.&lt;/p&gt;&lt;p&gt;AJAX utiliza a transferência de dados assíncrona entre o navegador e o servidor WEB, permitindo que as páginas WEB façam pequenas requisições ao servidor WEB no lugar de uma página inteira. Esta tecnologia independe do servidor WEB.&lt;/p&gt;&lt;p&gt;AJAX é baseado nos seguintes padrões WEB: JavaScript, XML, HTML, CSS.&lt;/p&gt;&lt;p&gt;Em um código JavaScript tradicional, se se desejar receber qualquer informação do banco de dados ou um arquivo do servidor, ou enviar uma informação do usuário para um servidor, ter-se-á criar um formulário HTML e enviar por GET ou POST dados para o servidor. O usuário terá que clicar no botão SUBMIT para enviar e receber as informações, esperar que o servidor para responder e então uma nova página será carregada com os resultados.&lt;/p&gt;&lt;p&gt;Porque o servidor retorna uma nova página cada vez que o usuário submete uma entrada, as aplicações web são lentas e menos amigáveis.&lt;/p&gt;&lt;p&gt;Para uma aplicação tradicional, uma página pode fazer uma requisição para, e receber uma resposta do servidor WEB sem a necessidade de recarregar a página. O usuário ficará na mesma página e não notará que o script requisitou páginas, ou enviou dados para o servidor em background.&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;strong&gt;Objeto XMLHttpRequest&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;Utilizando o objeto XMLHttpRequest, o programador web pode atualizar uma página com dados do servidor sem necessidade de recarregar a página.&lt;/p&gt;&lt;p&gt;O Google em &lt;a href="http://www.google.com/webhp?complete=1&amp;amp;hl=en" target="_blank"&gt;http://www.google.com/webhp?complete=1&amp;amp;hl=en&lt;/a&gt; fez com que AJAX se tornasse popular. Google Suggest esta utilizando objeto XMLHttpRequiest para criar uma interface web dinâmica, quando o usuário inicia digitando na caixa de pesquisa, um JavaScript envia as letras para o servidor e o servidor retorna uma lista de sugestões.&lt;/p&gt;&lt;p&gt;O objeto XMLHttpRequest é suportado por Internet Explorer 5 ou superior, Safári 1.2, Mozilla 1.0 / Firefox, Opera 8+, and Nestscape 7.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-3908600541505822713?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/3908600541505822713/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=3908600541505822713' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3908600541505822713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/3908600541505822713'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/ajax-introduo.html' title='Ajax - Introdução'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-5566948675511504208</id><published>2007-11-05T04:42:00.001-08:00</published><updated>2007-11-05T04:47:48.785-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>Usuarios SAMBA</title><content type='html'>&lt;span style="font-family:arial;"&gt;Criar um usuário no samba (SUSE)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;/* Para adicionar usuário no LINUX*/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;adduser caio.nakashima&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-family:trebuchet ms;"&gt;/* Para excluir usuário no LINUX*/&lt;br /&gt;&lt;/span&gt;userdel caio.nakashima&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;/span&gt;&lt;br /&gt;/* Para definir senha para acesso samba */&lt;br /&gt;pdbedit -a -u caio.nakashima&lt;br /&gt;&lt;br /&gt;/* Para excluir acesso samba */&lt;br /&gt;pdbedit -x -u caio.nakashima&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-5566948675511504208?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/5566948675511504208/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=5566948675511504208' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5566948675511504208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/5566948675511504208'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/usuarios-samba.html' title='Usuarios SAMBA'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5896686524701293546.post-2315659936259495734</id><published>2007-11-05T04:10:00.000-08:00</published><updated>2008-11-05T11:35:18.344-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PostgreSQL'/><title type='text'>PostgreSQL + POSTGIS</title><content type='html'>Baixar o software do site:&lt;a href="http://www.postgresql.org/download/"&gt;http://www.postgresql.org/download/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Descompactar o arquivo utilizando do comando:&lt;br /&gt;&lt;br /&gt;tar -jxvf postgresql-x.x.x.tar.bz2&lt;br /&gt;&lt;br /&gt;no diretório criado digitar os comandos abaixo:&lt;br /&gt;&lt;br /&gt;./configure&lt;br /&gt;make&lt;br /&gt;su&lt;br /&gt;gmake install&lt;br /&gt;&lt;br /&gt;adduser postgres&lt;br /&gt;mkdir /usr/local/pgsql/data&lt;br /&gt;chown postgres /usr/local/pgsql/data&lt;br /&gt;su - postgres&lt;br /&gt;&lt;br /&gt;/usr/local/pgsql/bin/initdb -D -A /usr/local/pgsql/data --locale='en_US.LATIN1'&lt;br /&gt;Atualizar no arquivo postgres.conf&lt;br /&gt;&lt;br /&gt;port = 5432&lt;br /&gt;lc_messages = 'en_US.LATIN1' # locale for system error message#&lt;br /&gt;stringslc_monetary = 'en_US.LATIN1' # locale for monetary formatting&lt;br /&gt;lc_numeric = 'en_US.LATIN1' # locale for number formatting&lt;br /&gt;lc_time = 'en_US.LATIN1'&lt;br /&gt;&lt;br /&gt;/usr/local/pgsql/bin/postmaster -i -D /usr/local/pgsql/data &gt;logfile 2&gt;&amp;amp;1 &amp;amp;/usr/local/pgsql/bin/createdb test/usr/local/pgsql/bin/psql test&lt;br /&gt;&lt;br /&gt;/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data&lt;br /&gt;/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start&lt;br /&gt;&lt;br /&gt;Instalação do POSTGIS&lt;br /&gt;2.1. ExigênciasPostGIS tem as seguintes exigências para construção e uso:&lt;br /&gt;&lt;br /&gt;* Uma configuração e construção completos do código fonte PostgreSQL em árvore. PostGIS usa definições de processo de configuração/construção PostgreSQL para uma plataforma particular sua que está em construção. PostgreSQL está disponível em &lt;a href="http://www.postgresql.org/"&gt;http://www.postgresql.org/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;* O compilador de GNU C (gcc). Alguns outros compiladores de C ANSI podem ser usados para compilar PostGIS, mas nós achamos poucos problemas ao compilar com gcc.&lt;br /&gt;* GNU Make (gmake ou make). Para muitos sistemas, GNU Make é a versão default que faz falta. Para saber a versão utilizar make -v.&lt;br /&gt;Outras versões de make não podem processar o PostGIS Makefile corretamente.&lt;br /&gt;&lt;br /&gt;/***************************************************************************/*&lt;br /&gt;(Opcional) Biblioteca de reprojeção Proj4.&lt;br /&gt;A biblioteca Proj4 é usada para prover suporte a reprojeções coordenadas dentro de PostGIS.&lt;br /&gt;&lt;br /&gt;Proj4 está disponível. Para carregá-la utilize o site, &lt;a href="http://www.remotesensing.org/proj"&gt;http://www.remotesensing.org/proj&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Baixar o software de:&lt;a href="http://www.remotesensing.org/proj/"&gt;http://www.remotesensing.org/proj/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A versão utilizada para elaborar este documento foi proj-4.4.9.tar.gz&lt;br /&gt;&lt;br /&gt;Descompactar o arquivo com o comando&lt;br /&gt;tar -zxvf proj-4.4.9.tar.gz&lt;br /&gt;&lt;br /&gt;No diretório criado executar os seguintes comandos&lt;br /&gt;./configure --prefix=/opt/proj-4.4.9&lt;br /&gt;gmake&lt;br /&gt;su&lt;br /&gt;gmake install&lt;br /&gt;&lt;br /&gt;/**************************************************************************/&lt;br /&gt;&lt;br /&gt;(Opcional) Biblioteca de geometria GEOS.&lt;br /&gt;A biblioteca GEOS é usada para fornecer testes em geometria (Touches(), Contains(), Intersects()) e operações (Buffer(), GeomUnion(), Difference()) com PostGIS. GEOS está disponível para baixa em &lt;a href="http://geos.refractions.net/"&gt;http://geos.refractions.net/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;A versão utilizada para elaborar este documento foi proj-4.4.9.tar.gz&lt;br /&gt;Descompactar o arquivo com o comando&lt;br /&gt;&lt;br /&gt;tar -jxvf geos-2.2.3.tar.bz2&lt;br /&gt;&lt;br /&gt;No diretório criado executar os seguintes comandos&lt;br /&gt;./configure --prefix=/opt/geos-2.2.3&lt;br /&gt;gmake&lt;br /&gt;su&lt;br /&gt;gmake install&lt;br /&gt;&lt;br /&gt;/**************************************************************************/&lt;br /&gt;2.2. PostGIS&lt;br /&gt;O módulo de PostGIS é uma extensão ao PostgreSQL servidor de retaguarda. Assim, PostGIS 1.0.0 requer uma cópia completa do fonte PostgreSQL organizado em diretório para compilar. O código fonte PostgreSQL está disponível em &lt;a href="http://www.postgresql.org/"&gt;http://www.postgresql.org/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;PostGIS 1.0.0 pode ser construído com versões de PostgreSQL 7.1.x, 7.2.x ou 7.3.x. As versões de PostgreSQL anteriores não são suportadas.&lt;br /&gt;&lt;br /&gt;1. Antes de você compilar os módulos do servidor de postGIS, você tem que compilar e instalar o pacote PostgreSQL.Nota Se você planeja usar funcionalidade de GEOS você poderia precisar unir PostgreSQL à biblioteca de C++ padrão:&lt;br /&gt;&lt;br /&gt;LDFLAGS=-lstdc++&lt;br /&gt;./configure [YOUR OPTIONS HERE]&lt;br /&gt;&lt;br /&gt;Este é um trabalho voltado para exceções em C++ interando com ferramentas de desenvolvimento mais antigas. Se você perceber problemas estranhos (inesperadamente fechar uma retaguarda ou algo semelhante) tente este truque. Isso fará com que corra o risco de compilar o PostgreSQL.&lt;br /&gt;&lt;br /&gt;2. Faça o download do arquivo fonte PostGIS de &lt;a href="http://postgis.refractions.net/postgis-1.0.0.tar.gz"&gt;http://postgis.refractions.net/postgis-1.0.0.tar.gz&lt;/a&gt;. Descomprima o arquivo no diretório "contrib" do fonte PostgreSQL organizando os fontes no diretório.&lt;br /&gt;&lt;br /&gt;# cd [postgresql source tree]/contrib&lt;br /&gt;# gzip -d -c postgis-1.0.0.tar.gz tar xvf -&lt;br /&gt;&lt;br /&gt;3. Uma vez feita a instalação de PostgreSQL, entrar no diretório de "postgis", e editar o arquivo Makefile.config.&lt;br /&gt;* Se quiser dar suporte a reprojeção de coordenada, você tem que ter a biblioteca de Proj4 instalada, atribuir valor 1 a variável USE_PROJ, e eventualmente ajustar PROJ_DIR para direcionar a sua instalação para o diretório Proj4.&lt;br /&gt;* Se quer usar funcionalidades GEOS, você tem que ter instalada a biblioteca de GEOS, atribuir valor 1 a variável USE_GEOS, e eventualmente ajustar GEOS_DIR para direcionar a sua instalação para o diretório GEOS.&lt;br /&gt;&lt;br /&gt;/******************************************************************/&lt;br /&gt;Para o suporte ao PROJ4 e GEOS foram alteradas as seguintes linhasno arquivo Makefile.config&lt;br /&gt;&lt;br /&gt;USE_PROJ=1&lt;br /&gt;PROJ_DIR=/opt/proj-4.4.9&lt;br /&gt;&lt;br /&gt;USE_GEOS=1&lt;br /&gt;GEOS_DIR=/opt/geos-2.2.1&lt;br /&gt;&lt;br /&gt;/******************************************************************/4. Rode o compilador e instale comandos.&lt;br /&gt;./configure --with-pgsql=/usr/local/pgsql/bin/pg_config --with-geos=/opt/geos-&lt;br /&gt;&lt;br /&gt;2.2.1/bin/geos-config --with-proj=/opt/proj-4.4.9/&lt;br /&gt;&lt;br /&gt;# make&lt;br /&gt;# su&lt;br /&gt;# make install&lt;br /&gt;&lt;br /&gt;Todos os arquivos são instalados relativamente no diretório de instalação do PostgreSQL, [prefix].&lt;br /&gt;* Bibliotecas são instaladas [prefix]/lib/contrib.&lt;br /&gt;* Arquivos de suporte importantes como postgis.sql são instalados em[prefix]/share/contrib.&lt;br /&gt;* Carregador e binaries livres são instalados em [prefix]/bin.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. PostGIS requer para o PL/pgSQL extensão da linguagem procedural. Antes de carregar o arquivo postgis.sql, você tem que habilitar primeiro o PL/pgSQL. Você deveria usar o comando createlang. O Guia de Programador PostgreSQL 7.1 tem detalhes, caso você queira executá-lo manualmente.&lt;br /&gt;&lt;br /&gt;# /usr/local/pgsql/bin/createlang plpgsql template1&lt;br /&gt;&lt;br /&gt;6. Carregue o objeto PostGIS e defina funções no banco de dados carregando definições de arquivo de postgis.sql.Copiar as bibliotecas do GEOS e PROJ parao postgres&lt;br /&gt;&lt;br /&gt;# cp /opt/geos-2.2.3/lib/* /usr/local/pgsql/lib&lt;br /&gt;# cp /opt/proj-4.4.9/lib/* /usr/local/pgsql/lib&lt;br /&gt;&lt;br /&gt;No SUSE é preciso copiar as bibliotecas para&lt;br /&gt;&lt;br /&gt;# cp /opt/geos-2.2.3/lib/* /usr/lib&lt;br /&gt;# cp /opt/proj-4.4.9/lib/* /usr/lib&lt;br /&gt;&lt;br /&gt;# /usr/local/pgsql/bin/psql -d template1 -f /usr/local/pgsql/share/contrib/lwpostgis.sql&lt;br /&gt;&lt;br /&gt;Na execução do comando acima pode gerar erro de bibliotecas:Editar como root o arquivo:&lt;br /&gt;&lt;br /&gt;/etc/ld.so.conf&lt;br /&gt;Acrescentar o caminhos para as bibliotecas necessárias.&lt;br /&gt;&lt;br /&gt;Por exemplo:&lt;br /&gt;/opt/geos-3.0.0/&lt;br /&gt;/opt/proj-2.5.0/&lt;br /&gt;&lt;br /&gt;Para carregar o caminho, executar como root:&lt;br /&gt;/sbin/ldconfig&lt;br /&gt;&lt;br /&gt;Extensões de servidor de PostGIS agora são carregadas e prontas para uso.&lt;br /&gt;&lt;br /&gt;7. Para um completo uso de coordenada de identificadores de definição de sistemas EPSG, você também pode carregar as definições de arquivo spatial_ref_sys.sql e conteúdos de tabela SPATIAL_REF_SYS.&lt;br /&gt;&lt;br /&gt;# /usr/local/pgsql/bin/psql -d template1 -f /usr/local/pgsql/share/contrib/spatial_ref_sys.sql&lt;br /&gt;############################################&lt;br /&gt;Alguns comandos interessantes&lt;br /&gt;&lt;br /&gt;"C:\Arquivos de programas\PostgreSQL\8.1\bin\pg_dump.exe" -i -h 10.68.12.245 -p 5432 -U postgres -F c -b -v -f f:\backup\mi_2005_2006_public_%date%.backup "MI_2005_2006"&lt;br /&gt;&lt;br /&gt;"C:\Arquivos de programas\PostgreSQL\8.1\bin\pg_dump.exe" -i -h 10.68.12.245 -p 5432 -U postgres -F c -v -f f:\backup\mi_2005_2006_mapas_%date%.backup -n mapas "MI_2005_2006"&lt;br /&gt;&lt;br /&gt;"C:\Arquivos de programas\PostgreSQL\8.1\bin\pg_dump.exe" -i -h 10.68.12.245 -p 5432 -U postgres -F c -v -f f:\backup\mi_2005_2006_log_%date%.backup -n log "MI_2005_2006"&lt;br /&gt;&lt;br /&gt;"C:\Arquivos de programas\PostgreSQL\8.1\bin\pg_dump.exe" -i -h 10.68.12.245 -p 5432 -U postgres -F c -v -f f:\backup\mi_2005_2006_dicionario_%date%.backup -n dicionario "MI_2005_2006"&lt;br /&gt;&lt;br /&gt;Rem ALTER DATABASE "MI_2005_2006_NEW" RENAME TO "MI_2005_2006_NEW_";&lt;br /&gt;rem&lt;br /&gt;&lt;br /&gt;"C:\Arquivos de programas\PostgreSQL\8.1\bin\psql.exe" -d MI2005 -h 10.68.12.245 -p 5432 -U postgres&lt;br /&gt;&lt;br /&gt;rem /usr/local/pgsql/bin/postmaster -D /dados/pgsql/dadosMIcd&lt;br /&gt;&lt;br /&gt;rem /usr/local/pgsql/bin/pg_ctl -D /dados/pgsql/dadosMIcd -l logfile start&lt;br /&gt;&lt;br /&gt;rem /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data &gt;/tmp/logfile 2&gt;&amp;amp;1 &amp;amp;&lt;br /&gt;&lt;br /&gt;rem /usr/local/pgsql/bin/postmaster -D /dados/pgsql/dadosMIcd &gt;/tmp/logfileDadosMIcd 2&gt;&amp;amp;1 &amp;amp;rem CREATE DATABASE "MI_2005_2006"&lt;br /&gt;&lt;br /&gt;rem WITH OWNER = postgresrem ENCODING = 'LATIN1'rem TABLESPACE = pg_default;&lt;br /&gt;&lt;br /&gt;rem CREATE DATABASE "MI_2005_2006_DEV"rem WITH OWNER = postgresrem ENCODING = 'LATIN1'rem TABLESPACE = pg_default;rem CREATE DATABASE "SAM"&lt;br /&gt;&lt;br /&gt;rem WITH OWNER = postgresrem ENCODING = 'LATIN1'rem TABLESPACE = pg_default;rem CREATE DATABASE "dicivip"&lt;br /&gt;&lt;br /&gt;rem WITH OWNER = postgresrem ENCODING = 'UTF8'rem TABLESPACE = pg_default;&lt;br /&gt;&lt;br /&gt;rem /usr/local/pgsql/bin/createlang plpgsql template1rem /usr/local/pgsql/bin/psql -d&lt;br /&gt;template1 -f /usr/local/pgsql/share/contrib/lwpostgis.sqlrem /usr/local/pgsql/bin/psql -d&lt;br /&gt;template1 -f /usr/local/pgsql/share/contrib/spatial_ref_sys.sql&lt;br /&gt;&lt;br /&gt;rem ALTER DATABASE "MI_2005_2006_DEV" RENAME TO "MI_2005_2006_dev";&lt;br /&gt;rem ALTER USER postgres WITH PASSWORD 'sagi123';&lt;br /&gt;&lt;br /&gt;C:\Arquivos de programas\PostgreSQL\8.1\bin\pg_restore.exe -i -h 10.68.12.244 -p 5432 -U postgres -d dicivip -v "F:\backup\dicivip_10-10-2006.backup" Task update history&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5896686524701293546-2315659936259495734?l=cadernodocaio.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://cadernodocaio.blogspot.com/feeds/2315659936259495734/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5896686524701293546&amp;postID=2315659936259495734' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2315659936259495734'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5896686524701293546/posts/default/2315659936259495734'/><link rel='alternate' type='text/html' href='http://cadernodocaio.blogspot.com/2007/11/postgresql-postgis.html' title='PostgreSQL + POSTGIS'/><author><name>AnotacoesCaio</name><uri>http://www.blogger.com/profile/00446068610469804963</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
