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

<channel>
	<title>tar &#8211; Rafael Bernard Araujo</title>
	<atom:link href="https://rafael.bernard-araujo.com/tag/tar/feed" rel="self" type="application/rss+xml" />
	<link>https://rafael.bernard-araujo.com</link>
	<description>desenvolvendo... while(!success){  try(); }</description>
	<lastBuildDate>Mon, 04 Oct 2010 23:52:38 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
<site xmlns="com-wordpress:feed-additions:1">21941730</site>	<item>
		<title>Descomprimindo o tar de maneira inteligente</title>
		<link>https://rafael.bernard-araujo.com/descomprimindo-o-tar-de-maneira-inteligente.php</link>
					<comments>https://rafael.bernard-araujo.com/descomprimindo-o-tar-de-maneira-inteligente.php#comments</comments>
		
		<dc:creator><![CDATA[rafael]]></dc:creator>
		<pubDate>Mon, 06 Sep 2010 11:46:52 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[compressão]]></category>
		<category><![CDATA[tar]]></category>
		<guid isPermaLink="false">http://rafael.bernard-araujo.com/?p=567</guid>

					<description><![CDATA[A tarefa de extração de tarballs iniciar ao abrir um console, trocar para o diretórios do seu tarball e então digitar o comando tar seguido dos argumentos de acordo com o arquivo que você quer extrair. É aonde encontramos um leve problema. Admitimos que não é um grande problema, mas quando você faz isso repetidamente, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>A tarefa de extração de tarballs iniciar ao abrir um console, trocar para o diretórios do seu tarball e então digitar o comando tar seguido dos argumentos de acordo com o arquivo que você quer extrair. É aonde encontramos um leve problema. Admitimos que não é um grande problema, mas quando você faz isso repetidamente, começa a ser um incômodo real. O problema é que você precisa lembrar qual o tipo de arquivo que você vai extrair antes de autocompletar o nome do arquivo. Normalmente é bz2 ou gz, mas você precisa especificar o 'z' ou o 'j' antes de sabê-lo.</p>
<p>Podemos escrever um script usando um arquivo de comando para determinar o tipo de arquivo e depois passá-lo através da condição 'if' para determinar o comando correto de extração. Você pode preferir embutir os argumentos que usa sempre no script, mas neste caso eles são apenas transmitidos para o comando. O script inicia com a definição do tipo de arquivo, usando o código a seguir:</p>
<pre class="command">
#!/bin/bash
FILE_TYPE=$(file -b $2|awk '{ print $1}')
</pre>
<p>Com o argumento 'b', o arquivo de comando retorna apenas uma pequena linha de dados, sendo o primeiro caracter o tipo de arquivo. Esta informação é extraída desta linha ao acoplar a saída através de <code>awk</code>. Depois apenas precisaremos de usar o 'if' para executar o comando correto.</p>
<pre class="bash" style=""><span style="color: rgb(0, 0, 0); font-weight: bold;">if</span> <span style="color: rgb(122, 8, 116); font-weight: bold;">[</span> <span style="color: rgb(255, 0, 0);">"<span style="color: rgb(0, 120, 0);">$FILE_TYPE</span>"</span> = <span style="color: rgb(255, 0, 0);">"bzip2"</span> <span style="color: rgb(122, 8, 116); font-weight: bold;">]</span>; <span style="color: rgb(0, 0, 0); font-weight: bold;">then</span>
<span style="color: rgb(194, 12, 185); font-weight: bold;">tar</span> <span style="color: rgb(255, 0, 0);">"$1j"</span> <span style="color: rgb(255, 0, 0);">"$2"</span>
<span style="color: rgb(0, 0, 0); font-weight: bold;">elif</span> <span style="color: rgb(122, 8, 116); font-weight: bold;">[</span> <span style="color: rgb(255, 0, 0);">"<span style="color: rgb(0, 120, 0);">$FILE_TYPE</span>"</span> = <span style="color: rgb(255, 0, 0);">"gzip"</span> <span style="color: rgb(122, 8, 116); font-weight: bold;">]</span>; <span style="color: rgb(0, 0, 0); font-weight: bold;">then</span>
<span style="color: rgb(194, 12, 185); font-weight: bold;">tar</span> <span style="color: rgb(255, 0, 0);">"$1z"</span> <span style="color: rgb(255, 0, 0);">"$2"</span>
<span style="color: rgb(0, 0, 0); font-weight: bold;">fi</span></pre>
<p>Obviamente, é simples adicionar seus próprios tipos e deixar esta parte mais compreensível. Será preciso salvar seu script com um nome conveniente (escolher lfx) e colocá-lo na sua pasta (como um ~/bin). Descomprimir arquivos tar será depois será simples ao digitar:</p>
<pre class="bash" style="">$ lfx xvf ~<span style="color: rgb(0, 0, 0); font-weight: bold;">/</span>testfile.bz2</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://rafael.bernard-araujo.com/descomprimindo-o-tar-de-maneira-inteligente.php/feed</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">567</post-id>	</item>
	</channel>
</rss>
