<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Unix Commands</title>
	
	<link>http://www.unixcommand.org</link>
	<description>Unix Commands Reference</description>
	<pubDate>Tue, 18 Nov 2008 10:11:50 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/UnixCommands" type="application/rss+xml" /><item>
		<title>touch - change file timestamps</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/456087291/</link>
		<comments>http://www.unixcommand.org/touch/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 14:55:31 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Unix file operations]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=78</guid>
		<description><![CDATA[ouch command is one of these little but extremely useful tools in Unix which you may have used for quite sometime before realizing their full potential. In short, it updates file timestamps - access and modification ones (atime and mtime respectively).
Why modify file timestamps?
There are quite a few legitimate reasons why you may want to [...]]]></description>
			<content:encoded><![CDATA[<p><strong>ouch command</strong> is one of these little but extremely useful tools in Unix which you may have used for quite sometime before realizing their full potential. In short, it updates file timestamps - access and modification ones (<strong>atime </strong>and <strong>mtime </strong>respectively).</p>
<h3>Why modify file timestamps?</h3>
<p>There are quite a few legitimate reasons why you may want to update timestamps on a certain file. Ranging from source control approaches to storage usage analysis, there are processes out there which rely on the timestamps associated with each file and directory of yours.</p>
<p>After all, it's always useful to know when the file was last modified or when somebody tried to access its contents.</p>
<h3>Changing timestamps of a time to the current system time</h3>
<p>The default behavior of <strong>touch </strong>command is to change all three timestamps associated with a file to the current system time.</p>
<p>You simply specify the filename as a command line parameter, no oother options are needed. If there isn't a file with the specified name, touch command will create it for you if permissions allow it:</p>
<pre>ubuntu$ <strong>ls try</strong>
ls: try: No such file or directory
ubuntu$ <strong>touch try</strong>
ubuntu$ <strong>ls try</strong>
try
ubuntu$ <strong>stat try</strong>
  File: `try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2008-11-17 08:03:02.000000000 -0600
Modify: 2008-11-17 08:03:02.000000000 -0600
Change: 2008-11-17 08:03:02.000000000 -0600
ubuntu$ <strong>date</strong>
Mon Nov 17 08:03:05 CST 2008</pre>
<p>As you can see from the example, the file which isn't originally found, gets created by the touch command and gets its timestamps set to the current system time and date.</p>
<p>Changing file timestamps to a specific date and time</p>
<p>If you have a specific time and date you would like to be used for all the timestamps of a file or directory, <strong>touch command</strong> will gladly accempt a timestamp template with <strong>-t</strong> command line option.</p>
<p>Template for the timestamp is quite thorough: [[CC]YY]MMDDhhmm[.ss], but it's entirely up to you whether to specify the year (either two-digit or a full form) or not.</p>
<p>This example resets the date to October 16th:</p>
<pre>ubuntu$ <strong>touch -t 10161000 ./try</strong>
ubuntu$ <strong>stat ./try</strong>
  File: `./try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2008-10-16 10:00:00.000000000 -0500
Modify: 2008-10-16 10:00:00.000000000 -0500
Change: 2008-11-18 03:54:10.000000000 -0600</pre>
<p>As you can see from the output, both access time and modification time got updated. The reason change time (ctime) is set to a different date is because this field reflects the last update to the inode behind a file, and always reflects the current time. In other words, it's set to Nov 18th 2008 because of the date of writing this example.</p>
<p>If you fancy adding a year to the timestamp specification, you can specify something from both past and future.</p>
<p>Here's how easy it is to set atime and mtime to the Oct 16th, 2010 date:</p>
<pre>ubuntu$ <strong>touch -t 201010161000 ./try</strong>
ubuntu$ <strong>stat ./try</strong>
  File: `./try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2010-10-16 10:00:00.000000000 -0500
Modify: 2010-10-16 10:00:00.000000000 -0500
Change: 2008-11-18 03:57:30.000000000 -0600</pre>
<h3>Modifying atime of a file in Unix</h3>
<p>Similar to the commands above, you can use <strong>-a</strong> option to make <strong>touch </strong>only update the access time field of a file:</p>
<pre>ubuntu$ <strong>touch -at 200010161000 ./try</strong>
ubuntu$ <strong>stat ./try</strong>
  File: `./try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2000-10-16 10:00:00.000000000 -0500
Modify: 2010-10-16 10:00:00.000000000 -0500
Change: 2008-11-18 04:05:22.000000000 -0600</pre>
<h3>Modifying mtime of a file in Unix</h3>
<p>If you're interested in updating the modification date only, use <strong>-m</strong> option:</p>
<pre>ubuntu$ <strong>touch -mt 200510161000 ./try</strong>
ubuntu$ <strong>stat ./try</strong>
  File: `./try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2000-10-16 10:00:00.000000000 -0500
Modify: 2005-10-16 10:00:00.000000000 -0500
Change: 2008-11-18 04:07:12.000000000 -0600</pre>
<h3>Using a reference file to set atime and mtime</h3>
<p>Finally, the really useful option for synchronizing access and modification time fields between multiple files is to use reference file. A reference file is the file which already has the timestamps you'd like to copy:</p>
<pre>ubuntu$ <strong>stat /etc/lsb-release</strong>
  File: `/etc/lsb-release'
  Size: 97              Blocks: 8          IO Block: 4096   regular file
Device: 801h/2049d      Inode: 1278451     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2008-11-14 05:30:09.000000000 -0600
Modify: 2007-04-12 01:02:52.000000000 -0500
Change: 2007-09-26 02:41:20.000000000 -0500</pre>
<p>By specifying this file using a -r option, you can use the touch command to set the same atime and mtime values to any file of yours:</p>
<pre>ubuntu$ <strong>touch -r /etc/lsb-release ./try</strong>
ubuntu$ <strong>stat ./try</strong>
  File: `./try'
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: 801h/2049d      Inode: 655596      Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/   greys)   Gid: (  113/   admin)
Access: 2008-11-14 05:30:09.000000000 -0600
Modify: 2007-04-12 01:02:52.000000000 -0500
Change: 2008-11-18 04:09:02.000000000 -0600</pre>
<h3>See also:</h3>
<ul>
<li><strong><a title="atime, ctime, mtime" href="http://www.unixtutorial.org/2008/04/atime-ctime-mtime-in-unix-filesystems/">atime, ctime and mtime in Unix filesystems</a></strong></li>
<li><strong><a title="advanced commands in unix" href="http://www.unixcommand.org/advanced-unix-commands/">Advanced Unix commands</a><br />
</strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/456087291" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/touch/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/touch/</feedburner:origLink></item>
		<item>
		<title>man - view manual pages for Unix commands</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/377762817/</link>
		<comments>http://www.unixcommand.org/man/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 04:38:52 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Site updates]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=66</guid>
		<description><![CDATA[man is one of the very first Unix commands everyone learns. It shows a brief manual for most of the commands available on your Unix-like OS and provides cross-references to other similar manuals.
What is man command used for
Many Unix commands are quite useful even if run without command line parameters, but as soon as you [...]]]></description>
			<content:encoded><![CDATA[<p><strong>man</strong> is one of the very first Unix commands everyone learns. It shows a brief manual for most of the commands available on your Unix-like OS and provides cross-references to other similar manuals.</p>
<h3>What is man command used for</h3>
<p>Many Unix commands are quite useful even if run without command line parameters, but as soon as you reach the next comfort level, you start wondering about extracting even more from the same command. This is when reading manuals becomes vital, and man offers a great way to explore them.</p>
<p>All Unix-like systems are provided with extensive manuals. Even if you don't have the material printed on paper, you still have plenty of information installed with your OS.</p>
<p>Most usually, manual pages are found under <strong>/usr/share/man</strong> directory. Manuals are not presented in clear text - there's a markup language commands which should be interpreted by the <strong>man command</strong>.</p>
<h3>What is a Unix manual page (manpage)</h3>
<p>All the manuals for Unix commands are split into clearly marked sections:</p>
<ul>
<li><strong>NAME </strong>- command name as it should be typed</li>
<li><strong>SYNOPSIS </strong>- syntax for running a command - all the possible command line options</li>
<li><strong>DESCRIPTION </strong>- textual description of what a command is used for</li>
<li><strong>OPTIONS </strong>- full list of command line options with thorough explanations</li>
<li><strong>FILES </strong>- files which are used by a command</li>
<li><strong>SEE ALSO</strong> - other relevant commands you might want to look at</li>
<li><strong>BUGS </strong>- known bugs and limitations of a command</li>
<li><strong>AUTHOR </strong>- list of command authors, developers and most current maintainers</li>
</ul>
<p>A manual page generated by man command is nothing but a clear text you can access from most basic Unix shell session, formatted as per your terminal capabilities (most often you see that section names are shown in bold font, but that's about it).</p>
<h3>Using man command in Unix</h3>
<p>The simplest way to get help in Unix is to run man command and specify a name of another Unix command as a parameter. Naturally, the first thing you should do is to have man show you a manual for itself:</p>
<p>ubuntu$ <strong>man man</strong></p>
<p>This is how it would look (click the image o get the full resolution):</p>
<p style="text-align: center;"><a href="http://www.unixcommand.org/wp-content/uploads/2008/08/man-man.png"><img class="alignnone size-full wp-image-67" title="man-man" src="http://www.unixcommand.org/wp-content/uploads/2008/08/man-man.png" alt="" width="500" height="312" /></a></p>
<h3 style="text-align: left;">See also:</h3>
<ul>
<li><strong><a title="Basic commands" href="http://www.unixcommand.org/basic-unix-commands">basic Unix commands</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/377762817" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/man/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/man/</feedburner:origLink></item>
		<item>
		<title>runlevel - report previous and current Unix OS runlevel</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/377720176/</link>
		<comments>http://www.unixcommand.org/runlevel/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 03:30:56 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[System status commands]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=57</guid>
		<description><![CDATA[runlevel is a basic Unix command aimed to do one simple task: report the runlevel of your Unix OS.
How runlevel command works
Your Unix system carefully logs information about every login session in special files. /var/run/utmp is the file containing information about everyone who's currently logged in, and since every record contains a runlevel information, it [...]]]></description>
			<content:encoded><![CDATA[<p><strong>runlevel </strong>is a basic Unix command aimed to do one simple task: report the runlevel of your Unix OS.</p>
<h3>How runlevel command works</h3>
<p>Your Unix system carefully logs information about every login session in special files. <strong>/var/run/utmp</strong> is the file containing information about everyone who's currently logged in, and since every record contains a runlevel information, it makes sense to use this file as a proof of the current OS runlevel.</p>
<p><strong>runlevel </strong>command reads <strong>/var/run/utmp </strong>file and extracts the most recent login entry. It then uses this entry to extract the current and previous runlevel information from it.</p>
<h3>Using runlevel command</h3>
<p>Simply run the command without any parameters:</p>
<pre>redhat$ <strong>runlevel</strong>
N 5</pre>
<p>As it was said earlier, the two numbers shown are supposed to be previous and current Unix runlevels.</p>
<p>However, the previous runlevel information is not usually found in the most recent login entry simply because runlevel hasn't changed,</p>
<p>so the command prints "N" instead of it.</p>
<p>Looking at the output above, you can see that the current runlevel is 5.</p>
<h3>See also:</h3>
<ul>
<li><a href="../uptime"><strong>uptime</strong></a> - find out how long the system has been up</li>
<li><a href="../who"><strong>who</strong></a><strong> </strong>- find out who is logged into the system</li>
<li><strong><a title="system status commands in Unix" href="http://www.unixcommand.org/unix-system-monitoring/">system status and monitoring commands in Unix</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/377720176" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/runlevel/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/runlevel/</feedburner:origLink></item>
		<item>
		<title>time - system resource usage for running a Unix command</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/370763385/</link>
		<comments>http://www.unixcommand.org/time/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 09:04:58 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[System status commands]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=52</guid>
		<description><![CDATA[time command is a basic tool in Unix which allows you to keep track of the system resources when running a specified Unix command.
time command in Unix
Sometimes it is quite important to know exactly how much of your system resources are used for running a particular command. This is where the time command can be [...]]]></description>
			<content:encoded><![CDATA[<p><strong>time command</strong> is a basic tool in Unix which allows you to keep track of the system resources when running a specified Unix command.</p>
<h3>time command in Unix</h3>
<p>Sometimes it is quite important to know exactly how much of your system resources are used for running a particular command. This is where the time command can be used. It's a really simple tool which takes any command line as a parameter, runs the command and then reports the system resources usage:</p>
<pre>ubuntu# <strong>time du -sk /var</strong>
4228720 /var

real    0m17.747s
user    0m0.010s
sys     0m0.080s</pre>
<p>In this example, a du command is run to gather the cumulative disk space taken up by the /var directory, and a report of used time is presented.</p>
<p>This is what each of these times mean:</p>
<ul>
<li><strong>real - real time</strong>, in other words a number of seconds, minutes and sometimes hours and even days it takes for the specified command to complete</li>
<li><strong>user -user time</strong>, that is the time spent by your OS executing the user code of your command - every instruction of the specified command which was executed in user mode.</li>
<li><strong>sys - system time</strong>, the amount of time spent by your OS running a system kernel code - instructions in response to the system calls initiated by your command</li>
</ul>
<h3>Real time vs user time vs system time</h3>
<p>As you can see, the real time is not a sum of the other two - this is because only the system resources are reported, which is essentially just the CPU time.</p>
<p>Since we ran the I/O intensive command, most of the time it took for du to complete was spent waiting for the I/O operations to complete - as you can see from the example, the CPU time was minimal.</p>
<p>While the necessary file and directory attributes were being read from the disk, both the user time and the system time counters for the command were not clocking anything - your OS process scheduler was busy spending valuable CPU cycles to execute code for other processes.</p>
<h3>See also:</h3>
<ul>
<li><a href="../uptime"><strong>uptime</strong></a> - find out how long the system has been up</li>
<li><strong><a title="top command" href="../top">top</a> </strong>- show tasks and system status</li>
<li><strong><a title="Unix commands" href="http://www.unixcommand.org/basic-unix-commands/">Basic Unix commands</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/370763385" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/time/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/time/</feedburner:origLink></item>
		<item>
		<title>top - display tasks and system status in Unix</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/310470039/</link>
		<comments>http://www.unixcommand.org/top/#comments</comments>
		<pubDate>Thu, 12 Jun 2008 15:24:39 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Process management]]></category>

		<category><![CDATA[System status commands]]></category>

		<category><![CDATA[process]]></category>

		<category><![CDATA[status]]></category>

		<category><![CDATA[system]]></category>

		<category><![CDATA[top]]></category>

		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=51</guid>
		<description><![CDATA[top is a basic Unix command which is very useful for observing the current state of your Unix system, by default presenting you the list of top users of your system's resources - CPU shares and memory.
Basic usage of the top command
By default, you run top without any parameters, and it shows you a full [...]]]></description>
			<content:encoded><![CDATA[<p><strong>top</strong> is a <a title="basic commands in unix" href="http://www.unixcommand.org/basic-unix-commands">basic Unix command</a> which is very useful for observing the current state of your Unix system, by default presenting you the list of top users of your system's resources - CPU shares and memory.</p>
<h3>Basic usage of the top command</h3>
<p>By default, you run <strong>top </strong>without any parameters, and it shows you a full screen (or full window of your terminal) with the current status of your system and a list of processes using most of its CPU:</p>
<pre>ubuntu$ <strong>top</strong>
top - 13:29:09 up 2 days,  7:13,  4 users,  load average: 0.07, 0.02, 0.00
Tasks: 148 total,   1 running, 147 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.6%us,  0.5%sy,  0.0%ni, 97.3%id,  1.6%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   4051792k total,  4026104k used,    25688k free,   359168k buffers
Swap:  4096492k total,    24296k used,  4072196k free,  2806484k cached
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 7629 greys     20   0  749m 291m  28m S    1  7.4  16:51.40 firefox
19935 greys     20   0  133m  14m  10m S    0  0.4   2:38.52 smplayer
    1 root      20   0  4020  880  592 S    0  0.0   0:00.96 init
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S    0  0.0   0:00.04 migration/0
    4 root      15  -5     0    0    0 S    0  0.0   0:00.90 ksoftirqd/0
    5 root      RT  -5     0    0    0 S    0  0.0   0:00.00 watchdog/0
    6 root      RT  -5     0    0    0 S    0  0.0   0:00.06 migration/1
    7 root      15  -5     0    0    0 S    0  0.0   0:01.32 ksoftirqd/1
    8 root      RT  -5     0    0    0 S    0  0.0   0:00.00 watchdog/1
    9 root      15  -5     0    0    0 S    0  0.0   0:02.14 events/0
   10 root      15  -5     0    0    0 S    0  0.0   0:01.44 events/1
   11 root      15  -5     0    0    0 S    0  0.0   0:00.00 khelper
   44 root      15  -5     0    0    0 S    0  0.0   0:01.26 kblockd/0
   45 root      15  -5     0    0    0 S    0  0.0   0:01.98 kblockd/1
   48 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpid
   49 root      15  -5     0    0    0 S    0  0.0   0:00.00 kacpi_notify
  153 root      15  -5     0    0    0 S    0  0.0   0:00.00 kseriod
  203 root      15  -5     0    0    0 S    0  0.0   0:03.56 kswapd0
  246 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/0
  247 root      15  -5     0    0    0 S    0  0.0   0:00.00 aio/1
 1595 root      15  -5     0    0    0 S    0  0.0   0:00.00 ksuspend_usbd
 1601 root      15  -5     0    0    0 S    0  0.0   0:00.02 khubd
 1612 root      15  -5     0    0    0 S    0  0.0   0:00.08 ata/0
 1615 root      15  -5     0    0    0 S    0  0.0   0:08.28 ata/1
 1616 root      15  -5     0    0    0 S    0  0.0   0:00.00 ata_aux</pre>
<h3>Output of the top command explained</h3>
<p>These are the elements which default <strong>top </strong>output consists of:</p>
<h4>Unix system uptime and average load</h4>
<p>This is the line of <strong>top </strong>which confirms how many hours (or even days!) your system has been up, shows you the number of logged in users, and reports the average system load numbers for the last minute, 5 minutes and 15 minutes.</p>
<pre>top - 13:29:09 up 2 days,  7:13,  4 users,  load average: 0.07, 0.02, 0.00</pre>
<p>In this line:</p>
<ul>
<li><em>13:29:09</em> is the current time</li>
<li><em>2 days, 7:13</em> is the uptime</li>
<li><em>4 users </em>shows how many users currently use your system<em><br />
</em></li>
<li><em>0.07</em> - average load for the last minute</li>
<li><em>0.02</em> - average load for the last 5 minutes</li>
<li><em>0.00</em> - average load for the last 15 minutes</li>
</ul>
<h4>Unix tasks stats</h4>
<p>Here you can see how many tasks are currently running on your system. Tasks here mean processes, and the main listing will show you the task names (in the COMMAND column) and the PIDs.</p>
<pre>Tasks: 148 total,   1 running, 147 sleeping,   0 stopped,   0 zombie</pre>
<h4>CPU(s) status</h4>
<p>Current CPU state, averaged for the number of CPUs installed in your system, is represented in this line:</p>
<pre>Cpu(s):  0.6%us,  0.5%sy,  0.0%ni, 97.3%id,  1.6%wa,  0.0%hi,  0.0%si,  0.0%st</pre>
<p>Here are the explanations for each parameter:</p>
<ul>
<li><strong>us </strong>- <em>User CPU time</em>. The time the CPU has spent running users’ processes with default priorities</li>
<li><strong>sy </strong>- <em>System CPU time</em>. The time the CPU has spent running the kernel and its processes</li>
<li><strong>ni </strong>- <em>Nice CPU time</em>. The time the CPU has spent running users’ proccess that have been prioritized up using <strong>nice </strong>command</li>
<li><strong>wa </strong>- <em>I/O wait</em>.  Amount of time the CPU has been waiting for I/O operations to complete</li>
<li><strong>hi </strong>- <em>Hardware IRQ</em>. The amount of time the CPU has been servicing hardware interrupts</li>
<li><strong>si </strong>- <em>Software Interrupts</em>. The amount of time the CPU has been servicing software interrupts</li>
<li><strong>st </strong>-  <em>Steal Time</em>. The amount of CPU ’stolen’ from this virtual machine by the hypervisor for other tasks (such as running another virtual machine) - a fairly recent addition to the top command, introduced with the increased virtualization focus in modern operating systems</li>
</ul>
<h4>Physical memory usage stats</h4>
<p>Memory stats line gives you a summary of how much physical memory you have on your system, and how much of it is currently used or available for the use.</p>
<p>Modern Linux systems are buffering quite a lot for improved performance, which means you rarely get to see all your physical RAM free - the more your system stays up and running, the more of its recently used data ends up being buffered.</p>
<p>In this line, you can see how quite a bit is taken up by the buffers:</p>
<pre>Mem:   4051792k total,  4026104k used,    25688k free,   359168k buffers</pre>
<h4>Swap usage stats</h4>
<p>Swap statistics highlight how actively your system uses the swap space - most of it should not be used on a healthy system, although seeing substantial amount of swap memory cached is quite normal. Bear in mind that these are caches held in physical memory, so in this example these 2.8Gb of cached swap is responsible for most of the 4Gb physical RAM taken up and reported as used in the above stats for memory</p>
<pre>Swap:  4096492k total,    24296k used,  4072196k free,  2806484k cached</pre>
<h4>List of the tasks (processes) running on your system</h4>
<p>This is the main part of the top output, which looks like this (output is abridged):</p>
<pre>  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 7629 greys     20   0  749m 291m  28m S    1  7.4  16:51.40 firefox
19935 greys     20   0  133m  14m  10m S    0  0.4   2:38.52 smplayer
    1 root      20   0  4020  880  592 S    0  0.0   0:00.96 init
    2 root      15  -5     0    0    0 S    0  0.0   0:00.00 kthreadd
    3 root      RT  -5     0    0    0 S    0  0.0   0:00.04 migration/0
    4 root      15  -5     0    0    0 S    0  0.0   0:00.90 ksoftirqd/0
    5 root      RT  -5     0    0    0 S    0  0.0   0:00.00 watchdog/0
    6 root      RT  -5     0    0    0 S    0  0.0   0:00.06 migration/1</pre>
<p>As you can see from this list, you're given all the vital information about each process running on your Unix system:</p>
<ul>
<li><strong>PID </strong>- process ID</li>
<li><strong>USER </strong>- username for the owner of each process</li>
<li><strong>PR </strong>- process priority (RT means a Real Time priority class - used for system processes)</li>
<li><strong>NI </strong>- priority set by nice utility</li>
<li><strong>VIRT </strong>- the amount of virtual memory used by a process: code,  data  and  shared libraries plus pages that have been swapped out</li>
<li><strong>RES </strong>- the resident part of a process - how much of it resides in the physical memory (non-swapped memory)</li>
<li><strong>SHR </strong>- shows you the size of potentially shared memory segments for a process</li>
<li><strong>S </strong>- the current state of each process</li>
<li><strong>%CPU </strong>- percentage of the time shares CPU spends running a particular process</li>
<li><strong>%</strong><strong>MEM </strong>- percentage of the physical memory of your system which is used by each process</li>
<li><strong>%TIME+ </strong>- total time CPUs spent running each process</li>
<li><strong>COMMAND </strong>- a command used to initiate each process.</li>
</ul>
<p>I'll be sure to revisit and expand this page at some later stage.</p>
<h3>See also:</h3>
<ul>
<li><a href="../uptime"><strong>uptime</strong></a> - find out how long the system has been up</li>
<li><a href="../who"><strong></strong></a></li>
<li><a href="../uname"><strong>uname</strong></a><strong> </strong>- print Unix system information</li>
<li><strong><a title="unix commands" href="http://www.unixcommand.org/basic-unix-commands/">basic Unix commands</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/310470039" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/top/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/top/</feedburner:origLink></item>
		<item>
		<title>date - print or set the system date and time</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/309551562/</link>
		<comments>http://www.unixcommand.org/date/#comments</comments>
		<pubDate>Wed, 11 Jun 2008 11:11:59 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[System status commands]]></category>

		<category><![CDATA[date]]></category>

		<category><![CDATA[scripts]]></category>

		<category><![CDATA[time]]></category>

		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=50</guid>
		<description><![CDATA[date is a basic Unix command for getting or setting the current time and date on your system. Because it's the easiest way to get current time, this command is extensively used in Unix scripting.
Getting current time and date in your Unix system
The default usage of this command is simple and requires no additional command [...]]]></description>
			<content:encoded><![CDATA[<p><strong>date</strong> is a basic Unix command for getting or setting the current time and date on your system. Because it's the easiest way to get current time, this command is extensively used in <a title="Unix scripting: time and date" href="http://www.unixtutorial.org/2008/06/unix-scripting-time-and-date/">Unix scripting</a>.</p>
<h3>Getting current time and date in your Unix system</h3>
<p>The default usage of this command is simple and requires no additional command line parameters:</p>
<p>ubuntu$ <strong>date</strong><br />
Wed Jun 11 11:43:52 IST 2008</p>
<h3>Using templates to specify the desired date/time format</h3>
<p><strong>date <strong>command </strong></strong>supports template system for printing the current time and date - so you can use it to specify the exact format for representing the time and date information - for example, only print out the day of a month or a current year instead of the whole default timestamp shown above.</p>
<p>Format is text string which begins with the + character, which consists of a number of special parameters starting with the % sign: %B, %d, etc.  If you're using spaces or any other elements in your format string, you need to use double quotes as well.</p>
<p>Here's an example of specifying a format for the <strong>date</strong> command:</p>
<p>ubuntu$ <strong>date "+%B %d, %Y"</strong><br />
June 11, 2008</p>
<p>In this example, the %B represents the full name of the current month, %d is the day of the month, and %Y is the four-digit representation of the current year.</p>
<p>Here are some of the most useful parameters used for date format specification:</p>
<pre>%a     locale’s abbreviated weekday name (e.g., Sun)
%A     locale’s full weekday name (e.g., Sunday)
%b     locale’s abbreviated month name (e.g., Jan)
%B     locale’s full month name (e.g., January)
%c     locale’s date and time (e.g., Thu Mar  3 23:05:25 2005)
%C     century; like %Y, except omit last two digits (e.g., 21)
%d     day of month (e.g, 01)
%D     date; same as %m/%d/%y
%e     day of month, space padded; same as %_d
%F     full date; same as %Y-%m-%d
%g     last two digits of year of ISO week number (see %G)
%G     year of ISO week number (see %V); normally useful only with %V
%h     same as %b
%H     hour (00..23)
%I     hour (01..12)
%j     day of year (001..366)
%k     hour ( 0..23)
%l     hour ( 1..12)
%m     month (01..12)
%M     minute (00..59)
%R     24-hour hour and minute; same as %H:%M
%s     seconds since 1970-01-01 00:00:00 UTC
%S     second (00..60)
%T     time; same as %H:%M:%S
%u     day of week (1..7); 1 is Monday
%w     day of week (0..6); 0 is Sunday
%x     locale’s date representation (e.g., 12/31/99)
%X     locale’s time representation (e.g., 23:13:48)
%y     last two digits of year (00..99)
%Y     year
</pre>
<h3>Unix epoch time</h3>
<p>Since time in most Unix systems is calculated against the Unix epoch (January 1, 1970), you can use date command to confirm the exact number of seconds elapsed since this time on your Unix system:</p>
<p>ubuntu$ <strong>date +%s</strong><br />
1213182257</p>
<h3>See also:</h3>
<ul>
<li><strong><a title="Basic unix commands" href="http://www.unixcommand.org/basic-unix-commands/">Basic Unix commands</a></strong></li>
<li><strong><a title="Shell scripting commands in Unix" href="http://www.unixcommand.org/unix-shell-scripting/">Unix commands for shell scripting</a><br />
</strong></li>
<li><strong></strong><strong><a title="Unix time" href="http://en.wikipedia.org/wiki/Unix_time">Unix time @ Wikipedia</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/309551562" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/date/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/date/</feedburner:origLink></item>
		<item>
		<title>getent - get entries from administrative database</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/300480747/</link>
		<comments>http://www.unixcommand.org/getent/#comments</comments>
		<pubDate>Thu, 29 May 2008 11:00:43 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Unix users]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=49</guid>
		<description><![CDATA[getent is Unix command which helps you query one of the following administrative databases in Unix: passwd, group, hosts, services, protocols, or networks.
Administrative databases in Unix
As you can probably see from their names, the administrative databases are here to help you gather the most vital information about your environment:

passwd - can be used to confirm [...]]]></description>
			<content:encoded><![CDATA[<p><strong>getent </strong>is Unix command which helps you query one of the following administrative databases in Unix: passwd, group, hosts, services, protocols, or networks.</p>
<h3>Administrative databases in Unix</h3>
<p>As you can probably see from their names, the administrative databases are here to help you gather the most vital information about your environment:</p>
<ul>
<li><strong>passwd </strong>- can be used to confirm usernames, userids, home directories and full names of your users</li>
<li><strong>group </strong>- all the information about Unix groups known to your system</li>
<li><strong>services </strong>- all the Unix services configured on your system</li>
<li><strong>networks </strong>- networking information - what networks your system belongs to</li>
<li><strong>protocols </strong>- everything your system knows about network protocols</li>
</ul>
<h3>How to use getent</h3>
<p>My home PC has a hostname of ubuntu. If I ever need to double-check which IPs this hostname points to, here's how I can use <strong>getent</strong>:</p>
<pre>ubuntu$ <strong>getent hosts ubuntu</strong>
127.0.1.1       ubuntu
192.168.0.2     ubuntu</pre>
<h3>Using getent to find a UID by username</h3>
<p>getent accepts various keys when searching in databases. For the passwd one, you can user either username or user id (UID) to search the database.</p>
<pre>ubuntu$ <strong>getent passwd greys</strong>
greys:x:1000:1000:Gleb Reys,,,:/home/greys:/bin/bas</pre>
<h3>Using getent to find a username by UID</h3>
<p>Like I said, the opposite will work as well:</p>
<pre>ubuntu$ <strong>getent passwd 1000</strong>
greys:x:1000:1000:Gleb Reys,,,:/home/greys:/bin/bash</pre>
<h3>See also:</h3>
<ul>
<li><strong><a title="id command" href="http://www.unixcommand.org/id">id</a></strong> - print user identity</li>
<li><strong><a title="who unix command" href="http://www.unixcommand.org/who">who</a></strong> - see who is logged into the system</li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/300480747" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/getent/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/getent/</feedburner:origLink></item>
		<item>
		<title>locate - quickly find files in Linux</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/285337019/</link>
		<comments>http://www.unixcommand.org/locate/#comments</comments>
		<pubDate>Wed, 07 May 2008 12:30:40 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Site updates]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=46</guid>
		<description><![CDATA[Today I'd like to show you one more option you have when searching for files in Linux. If you have a locate tool installed, you'll be able to find any file almost instantly.
How does locate command work?
locate uses a pretty simple principle - instead of going through your filesystem directory tree every time you need [...]]]></description>
			<content:encoded><![CDATA[<p>Today I'd like to show you one more option you have when searching for files in Linux. If you have a <strong>locate </strong>tool installed, you'll be able to find any file almost instantly.</p>
<h3>How does locate command work?</h3>
<p><strong>locate </strong>uses a pretty simple principle - instead of going through your filesystem directory tree every time you need a certain file found, it consults a database which stores locations of most files in your system. The locate database (locatedb) is updated nightly with a separate command. The update occurs during night hours when peak usage of your system is very unlikely, but this means that using such a database through the day will provide instant results.</p>
<p>There is obviously a chance that some files will be moved or even deleted by the time you look for them, then the locate database will still have entries for them and show them in results, but the actual files will be gone. There's a special command line option for the locate command to only return results for the existing files.</p>
<p>In short, the not-100%-accurate results are definitely worth the amazing speed increase you'll get when comparing the locate command against a more traditional <a href="http://www.unixcommand.org/find">find command</a> approach to locating files in Unix.</p>
<h3>Using locate to find files</h3>
<p>Simply specify the partial name of a file you need and watch results appear on your screen in a fraction of a second!</p>
<pre>In this example, I'm looking for everything that contains apache2 in its name (note how both files and directories are found):</pre>
<pre>ubuntu# <strong>locate apache2 | more</strong>
/backup/apache2-log
/etc/apache2
/etc/apache2/apache2.conf
/etc/apache2/apache2.conf.bak
/etc/apache2/apache2.conf.dpkg-dist
/etc/apache2/conf.d
/etc/apache2/conf.d/apache2-doc
/etc/apache2/conf.d/charset
/etc/apache2/envvars
/etc/apache2/httpd.conf
/etc/apache2/magic
/etc/apache2/mods-available
/etc/apache2/mods-available/actions.load
/etc/apache2/mods-available/alias.load</pre>
<h3>Report only existing files with locate</h3>
<p>If you're concerned that some of the files you're looking for could have been moved or deleted since last update of the <strong>locatedb </strong>database, use the <strong>-e</strong> command line option:</p>
<h3>Report non-existing files with locate</h3>
<p>Perhaps more useful way to approach the existing/non-existing files with <strong>locate </strong>is to use <strong>-E</strong> option which only shows the files which are referred in the <strong>locatedb </strong>database, but no longer exist.</p>
<p>For example, if I rename one of the files like this:</p>
<pre>ubuntu# <strong>mv /etc/apache2/apache2.conf.bak /etc/apache2/apache2.conf.backup</strong></pre>
<p>And then run the <strong>locate -E</strong>, it will immediately highlight it:</p>
<p>ubuntu# <strong>locate -E apache2 | more</strong><br />
/etc/apache2/apache2.conf.bak</p>
<h3>See also:</h3>
<ul>
<li><a href="http://www.unixcommand.org/find">find</a> - finding files in Unix</li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/285337019" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/locate/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/locate/</feedburner:origLink></item>
		<item>
		<title>file - show the type of a file in Unix</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/284612888/</link>
		<comments>http://www.unixcommand.org/file/#comments</comments>
		<pubDate>Tue, 06 May 2008 12:30:01 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Site updates]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=45</guid>
		<description><![CDATA[file is one of the basic Unix commands which helps you confirm exactly what kind of files you're working with. Using a special database of signatures for various types of files, it reads the first few bytes of a specified file and shows you whether it matches one of the signatures, thus confirming the file [...]]]></description>
			<content:encoded><![CDATA[<p>file is one of the basic Unix commands which helps you confirm exactly what kind of files you're working with. Using a special database of signatures for various types of files, it reads the first few bytes of a specified file and shows you whether it matches one of the signatures, thus confirming the file type.</p>
<h3>file command: basic usage</h3>
<p>The simplest way to use the file command is to run it and specify one or more file names as command line parameters. The file type description you expect will be given in plan English, showing you whether a file is a script or an executable, an ASCII text or a binary data:</p>
<pre>rhel$ <strong>file /etc/passwd</strong>
rhel$ <strong>file /bin/csh</strong>
rhel$ <strong>file /bin/tcsh</strong>
/bin/tcsh: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.4.0, dynamically linked (uses shared libs), stripped</pre>
<h3>Examples of file types in Linux</h3>
<p>Playing with the file command is fun. You can identify all sorts of files with this little command, but it's important to be able to read its output correctly.</p>
<p>Below I give you just a few most common file types examples, taken from a Red Hat Enterprise System (RHEL).</p>
<p>This is how a typical shared library will be identified:</p>
<pre>rhel$ <strong>file /lib/libc-2.3.2.so</strong>
/lib/libc-2.3.2.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), not stripped</pre>
<p>Note the 32-bit which confirms the bit-ness of this file and the Intel 80386 which confirms the architecture.</p>
<p>That's the same library in 64bit:</p>
<pre>rhel$ <strong>file /lib64/libc-2.3.2.so</strong>
/lib64/libc-2.3.2.so: ELF 64-bit LSB shared object, AMD x86-64, version 1 (SYSV), not stripped</pre>
<p>See how 32-bit is now changed to 64-bit, and AMD x86-64 shows the new architecture for it?</p>
<p>Binaries will look somewhat different, although the bit-ness and architecture will still be shown:</p>
<pre>rhel$ <strong>file /bin/ls</strong>
/bin/ls: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for GNU/Linux 2.4.0, dynamically linked (uses shared libs), stripped</pre>
<p>In this example, the important field is executable, which confirms this is a file you can run (vs previous example with shared objects which you can't run directly)</p>
<h3>Examples of file types in SPARC Solaris</h3>
<p>Just to show you that Unix file formats aren't this different, here's a few examples from SPARC Solaris 10 system.</p>
<p>First, a library - in 32bit and 64 bit forms:</p>
<pre>sparc$ <strong>file /lib/libc.so</strong>
/lib/libc.so:   ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped, no debugging information available
sparc$ <strong>file /lib/64/libc.so</strong>
/lib/64/libc.so:        ELF 64-bit MSB dynamic lib SPARCV9 Version 1, dynamically linked, not stripped, no debugging information available</pre>
<p>Observe how bit-ness is still shown where you'd expect to see it, as well as SPARC-based architecture (SPARC32PLUS for 32bit and SPARCV9 for 64-bit).</p>
<p>Here's how a kernel driver will look:</p>
<pre>sparc$ <strong>file /kernel/drv/sparcv9/zfs</strong>
/kernel/drv/sparcv9/zfs:        ELF 64-bit MSB relocatable SPARCV9 Version 1</pre>
<p>And that's how a typical SPARC Solaris binary is identified:</p>
<pre>sparc$ <strong>file /bin/ls</strong>
/bin/ls:        ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped</pre>
<h3>See also:</h3>
<ul>
<li><strong><a title="unix commands" href="http://www.unixcommand.org/basic-unix-commands">Basic Unix commands</a></strong></li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/284612888" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/file/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/file/</feedburner:origLink></item>
		<item>
		<title>basename - strip directory and suffix from a full path to a file</title>
		<link>http://feeds.feedburner.com/~r/UnixCommands/~3/284503335/</link>
		<comments>http://www.unixcommand.org/basename/#comments</comments>
		<pubDate>Fri, 11 Apr 2008 12:30:10 +0000</pubDate>
		<dc:creator>Gleb Reys</dc:creator>
		
		<category><![CDATA[Site updates]]></category>

		<guid isPermaLink="false">http://www.unixcommand.org/?p=44</guid>
		<description><![CDATA[basename is a very simple but useful Unix command which is used mostly in shell scripting. Taking a full path to a file as a parameter, it then stips the directory names from it and returns you just the name of a file.
Note: basename is a string stripping command - it simply returns you the [...]]]></description>
			<content:encoded><![CDATA[<p><strong>basename </strong>is a very simple but useful Unix command which is used mostly in shell scripting. Taking a full path to a file as a parameter, it then stips the directory names from it and returns you just the name of a file.</p>
<p><strong>Note</strong>: <strong>basename </strong>is a string stripping command - it simply returns you the last portion of a provided full path. It does not verify whether this portion is an actual file.</p>
<h3>How to use basename command</h3>
<p>This is how <strong>basename</strong> is invoked:</p>
<pre>ubuntu$ <strong>basename /etc/network/if-down.d/postfix</strong>
postfix</pre>
<h3>basename in shell scripting</h3>
<p>An example of using the <strong>basename</strong> command is shown below. This command line takes the input from a standard output from the <strong>find command</strong> and outputs only the names of the files. While there's not much practicality in doing this, it's a great way to show how <strong>basename </strong>works.</p>
<p>Here's the standard <strong>find </strong>output:</p>
<p>ubuntu$ find /etc/network/<br />
/etc/network/<br />
/etc/network/if-down.d<br />
/etc/network/if-down.d/wpasupplicant<br />
/etc/network/if-down.d/postfix<br />
/etc/network/if-post-down.d<br />
/etc/network/if-post-down.d/wpasupplicant<br />
/etc/network/if-post-down.d/wireless-tools<br />
/etc/network/if-pre-up.d<br />
/etc/network/if-pre-up.d/wpasupplicant<br />
/etc/network/if-pre-up.d/wireless-tools<br />
/etc/network/if-up.d<br />
/etc/network/if-up.d/wpasupplicant<br />
/etc/network/if-up.d/mountnfs<br />
/etc/network/if-up.d/ntp<br />
/etc/network/if-up.d/ntpdate<br />
/etc/network/if-up.d/postfix<br />
/etc/network/interfaces</p>
<p>And this is how only the filenames are extracted. Note, how for some parameters you see not the filenames, but directory names like <strong>if-down.d</strong>, simply because they're the last part of a string returned by the <strong>find </strong>output:</p>
<p>ubuntu$ <strong>for f in `find /etc/network/`; do basename $f; done;</strong><br />
network<br />
if-down.d<br />
wpasupplicant<br />
postfix<br />
if-post-down.d<br />
wpasupplicant<br />
wireless-tools<br />
if-pre-up.d<br />
wpasupplicant<br />
wireless-tools<br />
if-up.d<br />
wpasupplicant<br />
mountnfs<br />
ntp<br />
ntpdate<br />
postfix<br />
interfaces</p>
<h3>See also:</h3>
<ul>
<li><strong><a title="dirname" href="http://www.unixcommand.org/dirname">dirname</a></strong> - extract the directory name from a full path</li>
<li><strong><a title="cd - change directory" href="http://www.unixcommand.org/cd">cd</a></strong> -  change directory</li>
<li><strong><a title="pwd" href="http://www.unixcommand.org/pwd">pwd</a></strong> - confirm the current directory you’re in</li>
</ul>
<img src="http://feeds.feedburner.com/~r/UnixCommands/~4/284503335" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.unixcommand.org/basename/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.unixcommand.org/basename/</feedburner:origLink></item>
	</channel>
</rss>
