<?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>mitch&#039;s meanderings&#187; gnu</title>
	<atom:link href="http://mitchcontla.com/tag/gnu/feed/" rel="self" type="application/rss+xml" />
	<link>http://mitchcontla.com</link>
	<description>life, technology, running; links, photos, and videos</description>
	<lastBuildDate>Tue, 18 Oct 2011 19:32:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
		<item>
		<title>Bash: It&#8217;s the little things</title>
		<link>http://mitchcontla.com/2007/06/27/bash-its-the-little-things/</link>
		<comments>http://mitchcontla.com/2007/06/27/bash-its-the-little-things/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 19:47:50 +0000</pubDate>
		<dc:creator>mitch</dc:creator>
				<category><![CDATA[Geekery]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[gnu]]></category>
		<category><![CDATA[hints]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://mitch.contlafamily.com/2007/06/27/bash-its-the-little-things/</guid>
		<description><![CDATA[The Bash shell always amazes me. I needed to create a Maildir using the typical Maildir/cur, Maildir/new, Maildir/tmp structure and stumbled on this: $ mkdir -m 0700 -p Maildir/{cur,new,tmp} The -m and -p options are no-brainers, but the {cur,new,tmp} was new to me. It was easy to figure out what was going to happen&#8230; one [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.gnu.org/software/bash/" title="Bash - GNU Project">Bash</a> shell always amazes me. I needed to create a <a href="http://en.wikipedia.org/wiki/Maildir" title="Wikipedia: Maildir">Maildir</a> using the typical <code>Maildir/cur</code>, <code>Maildir/new</code>, <code>Maildir/tmp</code> structure and stumbled on this:</p>



<pre class="example"><code>$ mkdir -m 0700 -p Maildir/{cur,new,tmp}</code></pre>



<p>The <code>-m</code> and <code>-p</code> options are no-brainers, but the <code>{cur,new,tmp}</code> was new to me. It was easy to figure out what was going to happen&#8230; one command to create the Maildir directory, and the three subdirectories, I was simply unfamiliar with the syntax. A quick look at the <a href="http://www.gnu.org/software/bash/" title="Bash - GNU Project">Bash</a> man page and I discovered <a href="http://www.gnu.org/software/bash/manual/bashref.html#SEC27" title="Bash Reference Manual: Brace Expansion">Brace Expansion</a>:</p>

<blockquote>Brace expansion is a mechanism by which arbitrary strings may be generated.</blockquote>

<p>A comma separated list between opening and closing braces is expanded by the shell including any preamble (in my case Maildir/) or postscript. Brace expansion can also generate ranges:</p>



<pre class="example"><code>$ echo {1..10}
1 2 3 4 5 6 7 8 9 10</code></pre>



<p>Cool, huh?</p>]]></content:encoded>
			<wfw:commentRss>http://mitchcontla.com/2007/06/27/bash-its-the-little-things/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

