<?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>The Number 42 &#187; Linux</title>
	<atom:link href="http://www.thenumber42.net/category/computer-stuff/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.thenumber42.net</link>
	<description>Mostly about software testing, but a little bit about life, the universe, and everything</description>
	<lastBuildDate>Wed, 31 Mar 2010 01:52:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Setting Gmail as the Default Email Application in Linux</title>
		<link>http://www.thenumber42.net/2009/04/26/setting-gmail-as-the-default-email-application-in-linux/</link>
		<comments>http://www.thenumber42.net/2009/04/26/setting-gmail-as-the-default-email-application-in-linux/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 01:08:52 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[gmail]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/?p=130</guid>
		<description><![CDATA[Yesterday I was searching for a way to make GMail my default email provider, so that when I click on "mailto" links GMail opens.  In Windows this is pretty easy, but I couldn't figure it out for Linux.  So, bring on Google search.  I found this web page which explains it succinctly.  While I don't [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I was searching for a way to make GMail my default email provider, so that when I click on "mailto" links GMail opens.  In Windows this is pretty easy, but I couldn't figure it out for Linux.  So, bring on Google search.  I found <a href="http://www.howtogeek.com/howto/ubuntu/set-gmail-as-default-mail-client-in-ubuntu/" target="_blank">this</a> web page which explains it succinctly.  While I don't run Ubuntu, the same method worked for Arch Linux.</p>
<p>Essentially:</p>
<ol>
<li>Go to System-&gt;Preferences-&gt;Preferred Applications</li>
<li>For "Mail Reader" choose "Custom" and enter this (we'll create the script later):
<pre class="bash">/home/username/bin/open_mailto.<span style="color: #c20cb9; font-weight: bold;">sh</span> <span style="color: #ff0000;">&quot;%s&quot;</span></pre>
</li>
<li>The above script will be triggered anytime you click on an email link.  Now, let's create the actual script.  Note: This is a modified script from the above web site.  It is based on some of the comments posted about the artice and then refined a little.  This script will properly handle subject, cc, to, body, and most any proper email tag that you can throw at it.  One other difference is that it can handle parenthesis.
<pre class="bash"><span style="color: #808080; font-style: italic;">#!/bin/sh</span>
<span style="color: #007800;">uri=</span>`<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;$1&quot;</span>| <span style="color: #c20cb9; font-weight: bold;">sed</span> -e <span style="color: #ff0000;">'s/subject=/su=/'</span> \
     -e <span style="color: #ff0000;">'s/^mailto:<span style="color: #000099; font-weight: bold;">\(</span>[^&amp;?]<span style="color: #000099; font-weight: bold;">\+</span><span style="color: #000099; font-weight: bold;">\)</span>[?&amp;]<span style="color: #000099; font-weight: bold;">\?</span><span style="color: #000099; font-weight: bold;">\(</span>.*<span style="color: #000099; font-weight: bold;">\)</span>$/<span style="color: #000099; font-weight: bold;">\1</span><span style="color: #000099; font-weight: bold;">\&</span><span style="color: #000099; font-weight: bold;">\2</span>/'</span> \
     -e <span style="color: #ff0000;">'s/(/%28/g'</span> -e <span style="color: #ff0000;">'s/)/%29/g'</span>`
firefox -remote <span style="color: #ff0000;">&quot;openurl(https://mail.google.com/mail?<span style="color: #000099; font-weight: bold;">\</span>
view=cm&amp;tf=0&amp;to=$uri,new-tab)&quot;</span></pre>
</li>
<li>Finally, change the mode of the script so that it can execute:
<pre>chmod 755 /home/username/bin/open_mailto.sh</pre>
</li>
</ol>
<p>Hopefully that will work for you without problems.  In my tests so far it has worked great.</p>
<div class="link-summarizer">Link Summary
<ul>
<li><a href='http://www.howtogeek.com/howto/ubuntu/set-gmail-as-default-mail-client-in-ubuntu/' target="_blank">http://www.howtogeek....ail-client-in-ubuntu/</a></li>
</ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2009/04/26/setting-gmail-as-the-default-email-application-in-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Idea for Logging Tool</title>
		<link>http://www.thenumber42.net/2008/05/16/idea-for-logging-tool/</link>
		<comments>http://www.thenumber42.net/2008/05/16/idea-for-logging-tool/#comments</comments>
		<pubDate>Fri, 16 May 2008 21:11:51 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[interprocess communication]]></category>
		<category><![CDATA[logging]]></category>
		<category><![CDATA[pipes]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/?p=100</guid>
		<description><![CDATA[The piece of software that I test at work has an option to enable debug logging to a file.  Normally, I run with this enabled so that I have a record of what I did and any errors that I encounter.  However, this file can become extremely bloated and if often hundreds of [...]]]></description>
			<content:encoded><![CDATA[<p>The piece of software that I test at work has an option to enable debug logging to a file.  Normally, I run with this enabled so that I have a record of what I did and any errors that I encounter.  However, this file can become extremely bloated and if often hundreds of megabytes by the time I give it to the developer to fix a problem that I found.  I was thinking today about a solution that would be useful for any program that can dump logs to a file.  In Linux, you can create a named pipe, that other programs can write to.  Would it be possible to have one program create this pipe, then have the program under test write to this pipe instead of a file?  I haven't tested this, but I imagine it's possible.</p>
<p>Where this would be useful is your "log interceptor" program could do a multitude of different things with this stream of log data.  For example, it could push it into a database which could later be searched by developers to narrow down time windows or look for specific error messages.  Another really useful thing to do would be to have the log interceptor do basic log rotation.  This could keep the log file size manageable.  Or, maybe you want the log file emailed somewhere every 100k or whatever.  There are a lot of uses I could see for something like this.</p>
<p>Has anyone written or seen such a program?  Am I the only one that thinks this would be useful?  Post a comment and let me know what you think.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2008/05/16/idea-for-logging-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VMWare Workstation 6.0 and Ubuntu Hardy</title>
		<link>http://www.thenumber42.net/2008/05/14/vmware-workstation-60-and-ubuntu-hardy/</link>
		<comments>http://www.thenumber42.net/2008/05/14/vmware-workstation-60-and-ubuntu-hardy/#comments</comments>
		<pubDate>Wed, 14 May 2008 20:20:56 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Computer Stuff]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/?p=99</guid>
		<description><![CDATA[I just finished installing VMWare Workstation 6.0.3 under Ubuntu Hardy (8.04) and ran into some issues.  During the configuration, when VMWare is compiling drivers for the system, I got an error saying "include/asm/bitops_32.h:9:2: error: #error only &#60;linux/bitops.h&#62; can be included directly"
From my reading this seems to be related to version 2.6.24 of the Linux kernel. [...]]]></description>
			<content:encoded><![CDATA[<p>I just finished installing VMWare Workstation 6.0.3 under Ubuntu Hardy (8.04) and ran into some issues.  During the configuration, when VMWare is compiling drivers for the system, I got an error saying "<code>include/asm/bitops_32.h:9:2: error: #error only &lt;linux/bitops.h&gt; can be included directly</code>"</p>
<p>From my reading this seems to be related to version 2.6.24 of the Linux kernel.  The solution to this problem is actually quite easy...if you are willing to edit one of the VMWare header files.  A <a href="http://eitchpress.eitchnet.ch/?p=13">blog post</a> pointed me to the solution.  Here is what you need to do:</p>
<ol>
<li><code>cd /usr/lib/vmware/modules/source</code></li>
<li><code>sudo cp vmmon.tar vmmon.tar.orig</code></li>
<li><code>sudo tar xvf vmmon.tar</code></li>
<li><code>cd vmmon-only/include/</code></li>
<li><code>sudo vi vcpuset.h</code></li>
<ul>
<li>Line 74 needs to be changed from:<code> #include "asm/bitops.h"</code> to: <code>#include "linux/bitops.h"</code></li>
</ul>
<li><code>cd ../../</code></li>
<li><code>sudo rm vmmon.tar</code></li>
<li><code>sudo tar cvf vmmon.tar vmmon-only/</code></li>
<li><code>sudo rm -rf vmmon-only/</code></li>
<li><code>sudo vmware-config.pl</code></li>
</ol>
<p>Things should work now.  Good luck.</p>
<div class="link-summarizer">Link Summary
<ul>
<li><a href='http://eitchpress.eitchnet.ch/?p=13'>http://eitchpress.eitchnet.ch/?p=13</a></li>
</ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2008/05/14/vmware-workstation-60-and-ubuntu-hardy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSH Double Hop and Google Chat</title>
		<link>http://www.thenumber42.net/2007/11/29/ssh-double-hop-and-google-chat/</link>
		<comments>http://www.thenumber42.net/2007/11/29/ssh-double-hop-and-google-chat/#comments</comments>
		<pubDate>Fri, 30 Nov 2007 03:29:44 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2007/11/29/ssh-double-hop-and-google-chat/</guid>
		<description><![CDATA[I work at a place that blocks most outgoing ports, including Google Chat (port 5222).  While I don't use chat much at work it is nice for me and my wife to communicate short messages quickly. Of course I've never let a little thing like a firewall stop me, so I figured a way [...]]]></description>
			<content:encoded><![CDATA[<p>I work at a place that blocks most outgoing ports, including Google Chat (port 5222).  While I don't use chat much at work it is nice for me and my wife to communicate short messages quickly. Of course I've never let a little thing like a firewall stop me, so I figured a way around this restriction.</p>
<p>Here's how it works: Port 5222 of my work machine is forwarded <em>through</em> my home machine.  My home machine then bounces the connection to port 5222 on the Google chat server.</p>
<p>Here's the command to accomplish the double hop:</p>
<pre class="bash"><span style="color: #c20cb9; font-weight: bold;">ssh</span> -L <span style="color: #000000;">5222</span>:talk.google.com:<span style="color: #000000;">5222</span> my.home.computer -N -f</pre>
<p>The command line is slightly confusing at first, but here is a breakdown of what that does:</p>
<ul>
<li>-L 5222:talk.google.com:5222 -- This says to connect local port 5222 (the first 5222) to port 5222 (the 2nd 5222) on talk.google.com</li>
<li>my.home.computer -- This is the server to bounce the connection through</li>
<li>-N -- Do not start a remote shell</li>
<li>-f -- Fork the process into the background</li>
</ul>
<p>The effect of the -N and -f together is that this command will establish the tunnel, then fork into the background.  It will <em>appear</em> as if the command did nothing, since there is not output.  In reality it will have become a background process.</p>
<p>Good luck and happy firewall smashing. <img src='http://www.thenumber42.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2007/11/29/ssh-double-hop-and-google-chat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Enabling Sound on my NIS Controlled Ubuntu Machine</title>
		<link>http://www.thenumber42.net/2007/11/25/enabling-sound-on-my-nis-controlled-ubuntu-machine/</link>
		<comments>http://www.thenumber42.net/2007/11/25/enabling-sound-on-my-nis-controlled-ubuntu-machine/#comments</comments>
		<pubDate>Sun, 25 Nov 2007 20:24:27 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2007/11/25/enabling-sound-on-my-nis-controlled-ubuntu-machine/</guid>
		<description><![CDATA[My desktop computer at work is basically held hostage by the powers-that-be.  It is part of a NIS managed network, where all the user accounts and login info is on the network.  I am running Ubuntu Linux 7.10 which defaults to having the audio device belong to the audio group.  That's fine [...]]]></description>
			<content:encoded><![CDATA[<p>My desktop computer at work is basically held hostage by the powers-that-be.  It is part of a <a href="http://en.wikipedia.org/wiki/Network_Information_Service" target="_blank">NIS</a> managed network, where all the user accounts and login info is on the network.  I am running Ubuntu Linux 7.10 which defaults to having the audio device belong to the audio group.  That's fine for normal operation, but since my user account is controlled elsewhere I could not add myself to the audio group.  However, I do have local root access at my disposal. &lt;evil laugh&gt;</p>
<p>Now, if I go and do a chown on the audio devices it will only last as long as I don't reboot the computer.  So, I wanted a more permanent solution.  I know the inherent risks associated with it, but I basically enabled audio for all network users.  In my /etc/rc.local file I added the following:</p>
<pre class="bash"><span style="color: #808080; font-style: italic;"># Enable sound <span style="color: #000000; font-weight: bold;">for</span> nis users</span>
<span style="color: #c20cb9; font-weight: bold;">chown</span> root.<span style="color: #c20cb9; font-weight: bold;">users</span> /dev/adsp /dev/audio /dev/dsp
<span style="color: #c20cb9; font-weight: bold;">chown</span> root.<span style="color: #c20cb9; font-weight: bold;">users</span> /dev/mixer /dev/rtc /dev/sequencer /dev/sequencer2</pre>
<p>This works.  I know it's not ideal, but I can listen to my music at work now. <img src='http://www.thenumber42.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="link-summarizer">Link Summary
<ul>
<li><a href='http://en.wikipedia.org/wiki/Network_Information_Service' target="_blank">http://en.wikipedia.o...k_Information_Service</a></li>
</ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2007/11/25/enabling-sound-on-my-nis-controlled-ubuntu-machine/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sound in Ubuntu Linux</title>
		<link>http://www.thenumber42.net/2006/12/01/sound-in-ubuntu-linux/</link>
		<comments>http://www.thenumber42.net/2006/12/01/sound-in-ubuntu-linux/#comments</comments>
		<pubDate>Sat, 02 Dec 2006 00:55:00 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[dapper]]></category>
		<category><![CDATA[edgy]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2006/12/01/sound-in-ubuntu-linux/</guid>
		<description><![CDATA[I recently upgraded my laptop from Ubuntu Dapper to Ubuntu Edgy.  In doing so I lost my sound.  Mostly it's no big deal, but there are times when I actually need to listen to some audio.  After much poking around I found this guide.  After following the first few steps and [...]]]></description>
			<content:encoded><![CDATA[<p>I recently upgraded my laptop from Ubuntu Dapper to Ubuntu Edgy.  In doing so I lost my sound.  Mostly it's no big deal, but there are times when I actually need to listen to some audio.  After much poking around I found <a href="http://www.ubuntuforums.org/showthread.php?t=205449">this</a> guide.  After following the first few steps and two reboots I had my sound back!</p>
<p>Look out podcasts, here I come.</p>
<div class="link-summarizer">Link Summary
<ul>
<li><a href='http://www.ubuntuforums.org/showthread.php?t=205449'>http://www.ubuntuforu...owthread.php?t=205449</a></li>
</ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2006/12/01/sound-in-ubuntu-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Installing Internet Explorer on Linux</title>
		<link>http://www.thenumber42.net/2006/11/18/installing-internet-explorer-on-linux/</link>
		<comments>http://www.thenumber42.net/2006/11/18/installing-internet-explorer-on-linux/#comments</comments>
		<pubDate>Sat, 18 Nov 2006 18:25:00 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2006/11/18/installing-internet-explorer-on-linux/</guid>
		<description><![CDATA[I much prefer Firefox over IE, but my corporate Intranet was created only for IE and will absolutely not work with anything else.  So, although my OS of choice is Linux I am forced to use Windows when I need something from the Intranet.
I've tried a few Wine helper tools designed to install Internet [...]]]></description>
			<content:encoded><![CDATA[<p>I much prefer Firefox over IE, but my corporate Intranet was created only for IE and will absolutely not work with anything else.  So, although my OS of choice is Linux I am forced to use Windows when I need something from the Intranet.</p>
<p>I've tried a few Wine helper tools designed to install Internet Explorer on Linux, but have never had any luck getting IE to work.  Today I ran into the <a href="http://www.tatanka.com.br/ies4linux/page/Main_Page">IEs4Linux</a> project and it worked perfectly.  In just a few minutes IE6 was installed and is running correctly under Linux.</p>
<p>That's one less thing I need to be totally free of Windows. <img src='http://www.thenumber42.net/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="link-summarizer">Link Summary
<ul>
<li><a href='http://www.tatanka.com.br/ies4linux/page/Main_Page'>http://www.tatanka.co...4linux/page/Main_Page</a></li>
</ul></div>]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2006/11/18/installing-internet-explorer-on-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Enabling Laptop Frequency Scaling in Ubuntu</title>
		<link>http://www.thenumber42.net/2006/11/02/enabling-laptop-frequency-scaling-in-ubuntu/</link>
		<comments>http://www.thenumber42.net/2006/11/02/enabling-laptop-frequency-scaling-in-ubuntu/#comments</comments>
		<pubDate>Fri, 03 Nov 2006 00:46:00 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[frequency]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2006/11/02/enabling-laptop-frequency-scaling-in-ubuntu/</guid>
		<description><![CDATA[After some annoyance at how fast the battery in my laptop drained once I installed Ubuntu, I finally found the answer.
Type:
sudo dpkg-reconfigure gnome-applets
and answer yes to SUID the applet.
]]></description>
			<content:encoded><![CDATA[<p>After some annoyance at how fast the battery in my laptop drained once I installed Ubuntu, I finally found the answer.</p>
<p>Type:</p>
<blockquote><p>sudo dpkg-reconfigure gnome-applets</p></blockquote>
<p>and answer yes to SUID the applet.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2006/11/02/enabling-laptop-frequency-scaling-in-ubuntu/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Recursive Find and Replace in Linux</title>
		<link>http://www.thenumber42.net/2006/09/25/recursive-find-and-replace-in-linux/</link>
		<comments>http://www.thenumber42.net/2006/09/25/recursive-find-and-replace-in-linux/#comments</comments>
		<pubDate>Mon, 25 Sep 2006 18:53:00 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Bash/Shell]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[replace]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2006/09/25/recursive-find-and-replace-in-linux/</guid>
		<description><![CDATA[Believe it or not this actually took some time to find, so I am posting it here for future reference.  To do a find and replace recursively in Linux type:
&#160;
find ./ -type f &#124; xargs sed -i 's/string1/string2/g'
&#160;
That will replace every occurrence of "string1" with "string2."
]]></description>
			<content:encoded><![CDATA[<p>Believe it or not this actually took some time to find, so I am posting it here for future reference.  To do a find and replace recursively in Linux type:</p>
<pre class="bash">&nbsp;
<span style="color: #c20cb9; font-weight: bold;">find</span> ./ -<span style="color: #7a0874; font-weight: bold;">type</span> f | <span style="color: #c20cb9; font-weight: bold;">xargs</span> <span style="color: #c20cb9; font-weight: bold;">sed</span> -i <span style="color: #ff0000;">'s/string1/string2/g'</span>
&nbsp;</pre>
<p>That will replace every occurrence of "string1" with "string2."</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2006/09/25/recursive-find-and-replace-in-linux/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bash Variables</title>
		<link>http://www.thenumber42.net/2006/08/17/bash-variables/</link>
		<comments>http://www.thenumber42.net/2006/08/17/bash-variables/#comments</comments>
		<pubDate>Tue, 30 Nov 1999 00:00:00 +0000</pubDate>
		<dc:creator>Isaac</dc:creator>
				<category><![CDATA[Bash/Shell]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[bash]]></category>

		<guid isPermaLink="false">http://www.thenumber42.net/2006/08/17/bash-variables/</guid>
		<description><![CDATA[

Character
Definition
$*
Expands to the positional parameters, starting from one.  When the expansion occurs within double quotes, it expands to a single word with the value of each parameter separated by the first character of the IFS special variable.


$@
Expands to the positional parameters, starting from one.  When the expansion occurs within double quotes, each parameter [...]]]></description>
			<content:encoded><![CDATA[<table border="1">
<thead>
<th align="left" valign="middle">Character</th>
<th align="left" valign="middle">Definition</th>
<td align="left" valign="middle"><tt>$*</tt></td>
<td align="left" valign="middle">Expands to the positional parameters, starting from one.  When the expansion occurs within double quotes, it expands to a single word with the value of each parameter separated by the first character of the <tt>IFS</tt> special variable.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$@</tt></td>
<td align="left" valign="middle">Expands to the positional parameters, starting from one.  When the expansion occurs within double quotes, each parameter expands to a separate word.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$#</tt></td>
<td align="left" valign="middle">Expands to the number of positional parameters in decimal.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$?</tt></td>
<td align="left" valign="middle">Expands to the exit status of the most recently executed foreground pipeline.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$-</tt></td>
<td align="left" valign="middle">A hyphen expands to the current option flags as specified upon invocation, by the <strong>set</strong> built-in command, or those set by the shell itself (such as the <tt>-i</tt>).</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$$</tt></td>
<td align="left" valign="middle">Expands to the process ID of the shell.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$!</tt></td>
<td align="left" valign="middle">Expands to the process ID of the most recently executed background (asynchronous) command.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$0</tt></td>
<td align="left" valign="middle">Expands to the name of the shell or shell script.</td>
</tr>
<tr>
<td align="left" valign="middle"><tt>$_</tt></td>
<td align="left" valign="middle">The underscore variable is set at shell startup and contains the absolute file name of the shell or script being executed as passed in the argument list.  Subsequently, it expands to the last argument to the previous command, after expansion.  It is also set to the full pathname of each command executed and placed in the environment exported to that command.  When checking mail, this parameter holds the name of the mail file.</td>
</tr>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.thenumber42.net/2006/08/17/bash-variables/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
