<?xml version="1.0" encoding="iso-8859-15" ?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://purl.org/rss/1.0/" xmlns:dc="http://purl.org/dc/elements/1.1/" >
 <channel rdf:about="http://wiki.biohack.net/bin/view/Main/WillNorris/WebRss">
  <title>Foswiki Main/WillNorris</title>
  <link>http://wiki.biohack.net/bin/view/Main/WillNorris</link>
  <description>will's blog</description>
<image rdf:resource="http://wiki.biohack.net/pub/System/BiohackDotNetTheme/biohack-logo.png" />
  <dc:language>en-us</dc:language>
  <dc:rights>Copyright &#169; 2012 by contributing authors</dc:rights>
  <dc:publisher>Wiki Administrator [wbnoris@gmail.com]</dc:publisher>
  <dc:creator>Wiki Administrator [wbnoris@gmail.com]</dc:creator>
  <dc:source>Foswiki</dc:source>
  <items>
    <rdf:Seq>
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry174" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry173" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry172" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry171" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry170" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry169" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry168" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry167" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry166" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry165" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry164" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry163" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry162" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry160" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry159" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry158" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry157" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry154" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry152" />
  <rdf:li rdf:resource="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry151" />
    </rdf:Seq>
  </items>
</channel>
<image rdf:about="http://wiki.biohack.net/pub/System/BiohackDotNetTheme/biohack-logo.png">
  <title>Foswiki/NatSkin</title>
  <link>http://wiki.biohack.net/bin/view/Main/WillNorris</link>
  <url>http://wiki.biohack.net/pub/System/BiohackDotNetTheme/biohack-logo.png</url>
</image>
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry174">
 <title> bluetooth speakers </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry174</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://www.amazon.com/s/?ie&#61;UTF8&#38;keywords&#61;portable+bluetooth+speakers&#38;tag&#61;googhydr-20&#38;index&#61;aps&#38;hvadid&#61;4288945747&#38;ref&#61;pd&#95;sl&#95;49k6ax3d0q&#95;b
   &#42; http://www.newegg.com/Product/ProductList.aspx?Submit&#61;ENE&#38;IsNodeId&#61;1&#38;Description&#61;bluetooth speaker&#38;bop&#61;And&#38;Order&#61;RATING&#38;PageSize&#61;100
   &#42; http://www.tigerdirect.com/applications/category/category&#95;slc.asp?CatId&#61;5136&#38;name&#61;Stereo Speakers
<p />
   &#42; http://www.harmanaudio.com/search&#95;browse/product&#95;detail.asp?urlMaterialNumber&#61;JBLONAIRWBLKAM&#38;utm&#95;source&#61;google&#38;utm&#95;medium&#61;ppc&#38;utm&#95;campaign&#61;onair&#38;gclid&#61;CJv&#95;reyVsqkCFcsZQgodvCDpLg
<p />
   &#42; 
   &#42; 
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-06-13T05:15:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry173">
 <title> SCRUM tools </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry173</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://retrospectiva.org/ (ruby) no kaban
   &#42; http://kompiro.org/jamcircle/en/
   &#42; http://planningpoker.com/ (realtime team estimation)
   &#42; http://www.atlassian.com/software/greenhopper/tour/scrum.jsp?gclid&#61;CIyy&#95;oKj9agCFcsZQgoduH-aTg (from the confluence people)
   &#42; http://www.icescrum.org/ (groovy)
   &#42; http://www.scrumpytool.com/ (meh?)
   &#42; http://code.google.com/p/planigle/ (ror)
   &#42; http://scrumdo.org/ (hosting available) 
   &#42; http://agileexpress.sourceforge.net/ (java)
   &#42; http://scrumdo.org/ (python/django/pinax)
   &#42; 
   &#42; 
   &#42; 
<p />
   &#42; http://www.simple-kanban.com/ (javascript, might be a useful component)
   &#42; http://xpstudio.sourceforge.net/ eclipse plugins
<p />
   &#42; http://scrumdashboard.codeplex.com/ (c#)
   &#42; http://scrumtime.org/ (asp.net)
<p />
<p />
hosted-only services
   &#42; http://www.bananascrum.com/
   &#42; http://pangoscrum.com/
   &#42; http://www.agile42.com/cms/pages/agilo/
   &#42; 
&#37;IFDEFINEDTHEN{&#34;scrum&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-05-20T04:02:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry172">
 <title> Hold Me Now </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry172</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#91;&#91;&#37;ATTACHURL&#37;/Hold&#95;Me&#95;Now.mid]&#91;Hold&#95;Me&#95;Now.mid]]
&#60;p /&#62;
&#60;div style&#61;&#34;line-spacing:pre&#34;&#62;
I have a picture,
pinned to my wall.
An image of you and of me and we&#39;re laughing and loving it all.
Look at our life now, tattered and torn.
We fuss and we fight and delight in the tears that we cry until dawn
<p />
Hold me now, warm my heart
stay with me, let loving start (let loving start)
<p />
You say I&#39;m a dreamer, we&#39;re two of a kind
Both of us searching for some perfect world we know we&#39;ll never find
So perhaps I should leave here, yeah-ah go far away
But you know that there&#39;s nowhere that I&#39;d rather be than with you here
today
<p />
&#91;Chorus]
<p />
You ask if I love you, well what can I say?
You know that I do and if this is just one of those games that we play
So I&#39;ll sing you a new song, please don&#39;t cry anymore
and then I&#39;ll ask your forgiveness, though I don&#39;t know just what I&#39;m
asking it for
<p />
&#91;Chorus]
&#60;/div&#62;
<p />
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-04-04T04:28:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry171">
 <title> linux command line reference for common operations </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry171</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; (http://www.pixelbeat.org/cmdline.html)&#60;p /&#62;&#60;table class&#61;&#34;pixelbeat&#34;&#62; 
&#60;tbody&#62; 
<p />
&#60;tr id&#61;&#34;misc&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;2&#34;&#62;&#60;b&#62;Command&#60;/b&#62;&#60;/td&#62;&#60;td&#62;&#60;b&#62;Description&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;apropos whatis&#60;/td&#62;&#60;td&#62;Show commands pertinent to string. See also &#60;a href&#61;&#34;scripts/threadsafe&#34;&#62;threadsafe&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;lkdb/less.html&#34;&#62;man&#60;/a&#62; -t ascii &#124; ps2pdf - &#38;gt; ascii.pdf&#60;/td&#62;&#60;td&#62;make a pdf of a manual page&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;which command&#60;/td&#62;&#60;td&#62;Show full path name of command&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;time command&#60;/td&#62;&#60;td&#62;See how long a command takes&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;time cat&#60;/td&#62;&#60;td&#62;Start stopwatch. Ctrl-d to stop. See also &#60;a href&#61;&#34;scripts/stopwatch/&#34;&#62;sw&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;dirs&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;dir navigation&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cd -&#60;/td&#62;&#60;td&#62;Go to previous directory&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cd&#60;/td&#62;&#60;td&#62;Go to $HOME directory&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;(cd dir &#38;amp;&#38;amp; command)&#60;/td&#62;&#60;td&#62;Go to dir, execute command and return to current dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;pushd &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Put current dir on stack so you can &#60;b&#62;popd&#60;/b&#62; back to it&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;file&#95;search&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;file searching&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;settings/.bashrc&#34;&#62;alias&#60;/a&#62; l&#61;&#39;ls -l --color&#61;auto&#39;&#60;/td&#62;&#60;td&#62;quick dir listing&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ls -lrt&#60;/td&#62;&#60;td&#62;List files by date. See also &#60;a href&#61;&#34;scripts/newest&#34;&#62;newest&#60;/a&#62; and &#60;a href&#61;&#34;scripts/find&#95;mm&#95;yyyy&#34;&#62;find&#95;mm&#95;yyyy&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ls /usr/bin &#124; pr -T9 -W$COLUMNS&#60;/td&#62;&#60;td&#62;Print in 9 columns to width of terminal&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -name &#39;&#42;.&#91;ch]&#39; &#124; xargs grep -E &#39;expr&#39;&#60;/td&#62;&#60;td&#62;Search &#39;expr&#39; in this dir and below. See also &#60;a href&#61;&#34;scripts/findrepo&#34;&#62;findrepo&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -type f -print0 &#124; xargs -r0 grep -F &#39;example&#39;&#60;/td&#62;&#60;td&#62;Search all regular files for &#39;example&#39; in this dir and below&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -maxdepth 1 -type f &#124; xargs grep -F &#39;example&#39;&#60;/td&#62;&#60;td&#62;Search all regular files for &#39;example&#39; in this dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -maxdepth 1 -type d &#124; while &#60;a href&#61;&#34;programming/readline/&#34;&#62;read&#60;/a&#62; dir; do echo $dir; echo cmd2; done&#60;/td&#62;&#60;td&#62;Process each item with multiple commands (in while loop)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -type f ! -perm -444&#60;/td&#62;&#60;td&#62;Find files not readable by all (useful for web site)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -type d ! -perm -111&#60;/td&#62;&#60;td&#62;Find dirs not accessible by all (useful for web site)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;locate -r &#39;file&#91;^/]&#42;\.txt&#39;&#60;/td&#62;&#60;td&#62;Search cached index for names. This re is like glob &#42;file&#42;.txt&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;look reference&#60;/td&#62;&#60;td&#62;Quickly search (sorted) dictionary for prefix&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;grep &#60;a href&#61;&#34;settings/.bashrc&#34;&#62;--color&#60;/a&#62; reference /usr/share/dict/words&#60;/td&#62;&#60;td&#62;Highlight occurances of regular expression in dictionary&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;archives&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;archives and compression&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gpg -c file&#60;/td&#62;&#60;td&#62;Encrypt file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gpg file.gpg&#60;/td&#62;&#60;td&#62;Decrypt file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tar -c dir/ &#124; bzip2 &#38;gt; dir.tar.bz2&#60;/td&#62;&#60;td&#62;Make compressed archive of dir/&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;bzip2 -dc dir.tar.bz2 &#124; tar -x&#60;/td&#62;&#60;td&#62;Extract archive (use gzip instead of bzip2 for tar.gz files)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tar -c dir/ &#124; gzip &#124; gpg -c &#124; ssh user&#64;remote &#39;dd of&#61;dir.tar.gz.gpg&#39;&#60;/td&#62;&#60;td&#62;Make encrypted archive of dir/ on remote machine&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find dir/ -name &#39;&#42;.txt&#39; &#124; tar -c --files-from&#61;- &#124; bzip2 &#38;gt; dir&#95;txt.tar.bz2&#60;/td&#62;&#60;td&#62;Make archive of subset of dir/ and below&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find dir/ -name &#39;&#42;.txt&#39; &#124; xargs cp -a --target-directory&#61;dir&#95;txt/ --parents&#60;/td&#62;&#60;td&#62;Make copy of subset of dir/ and below&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;( tar -c /dir/to/copy ) &#124; ( cd /where/to/ &#38;amp;&#38;amp; tar -x -p )&#60;/td&#62;&#60;td&#62;Copy (with permissions) copy/ dir to /where/to/ dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;( cd /dir/to/copy &#38;amp;&#38;amp; tar -c &#60;b&#62;.&#60;/b&#62; ) &#124; ( cd /where/to/ &#38;amp;&#38;amp; tar -x -p )&#60;/td&#62;&#60;td&#62;Copy (with permissions) contents of copy/ dir to /where/to/&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;( tar -c /dir/to/copy ) &#124; ssh -C user&#64;remote &#39;cd /where/to/ &#38;amp;&#38;amp; tar -x -p&#39; &#60;/td&#62;&#60;td&#62;Copy (with permissions) copy/ dir to remote:/where/to/ dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;dd bs&#61;1M if&#61;/dev/sda &#124; gzip &#124; ssh user&#64;remote &#39;dd of&#61;sda.gz&#39;&#60;/td&#62;&#60;td&#62;Backup harddisk to remote machine&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;rsync&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;rsync&#60;/b&#62; (Network efficient file copier: Use the --dry-run option for testing)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;rsync -P rsync://rsync.server.com/path/to/file file&#60;/td&#62;&#60;td&#62;Only get diffs. Do multiple times for troublesome downloads&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;rsync --bwlimit&#61;1000 fromfile tofile&#60;/td&#62;&#60;td&#62;Locally copy with rate limit. It&#39;s like nice for I/O&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;rsync -az -e ssh --delete ~/public&#95;html/ remote.com:&#39;~/public&#95;html&#39;&#60;/td&#62;&#60;td&#62;Mirror web site (using compression and encryption)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;rsync -auz -e ssh remote:/dir/ &#60;b&#62;.&#60;/b&#62; &#38;amp;&#38;amp; rsync -auz -e ssh &#60;b&#62;.&#60;/b&#62; remote:/dir/&#60;/td&#62;&#60;td&#62;Synchronize current directory with remote one&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;ssh&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;ssh&#60;/b&#62; (Secure SHell)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ssh $USER&#64;$HOST command&#60;/td&#62;&#60;td&#62;Run command on $HOST as $USER (default command&#61;shell)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ssh -f -Y $USER&#64;$HOSTNAME xeyes&#60;/td&#62;&#60;td&#62;Run GUI command on $HOSTNAME as $USER&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;scp -p -r $USER&#64;$HOST: file dir/&#60;/td&#62;&#60;td&#62;Copy with permissions to $USER&#39;s home directory on $HOST&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;scp -c arcfour $USER&#64;$LANHOST: bigfile&#60;/td&#62;&#60;td&#62;Use faster crypto for local LAN. This might saturate GigE&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ssh -g -L 8080:localhost:80 root&#64;$HOST&#60;/td&#62;&#60;td&#62;Forward connections to $HOSTNAME:8080 out to $HOST:80&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ssh -R 1434:imap:143 root&#64;$HOST&#60;/td&#62;&#60;td&#62;Forward connections from $HOST:1434 in to imap:143&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ssh-copy-id $USER&#64;$HOST &#60;/td&#62;&#60;td&#62;Install public key for $USER&#64;$HOST for password-less log in&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;wget&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;wget&#60;/b&#62; (multi purpose download tool)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;(cd dir/ &#38;amp;&#38;amp; wget -nd -pHEKk http://www.pixelbeat.org/cmdline.html)&#60;/td&#62;&#60;td&#62;Store local browsable version of a page to the current dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget -c http://www.example.com/large.file&#60;/td&#62;&#60;td&#62;Continue downloading a partially downloaded file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget -r -nd -np -l1 -A &#39;&#42;.jpg&#39; http://www.example.com/dir/&#60;/td&#62;&#60;td&#62;Download a set of files to the current directory&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget ftp://remote/file&#91;1-9].iso/&#60;/td&#62;&#60;td&#62;FTP supports globbing directly&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget -q -O- http://www.pixelbeat.org/timeline.html &#124; grep &#39;a href&#39; &#124; head&#60;/td&#62;&#60;td&#62;Process output directly&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;wget url&#39; &#124; at 01:00&#60;/td&#62;&#60;td&#62;Download url at 1AM to current dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget --limit-rate&#61;20k url&#60;/td&#62;&#60;td&#62;Do a low priority download (limit to 20&#60;a href&#61;&#34;speeds.html&#34;&#62;KB/s&#60;/a&#62; in this case)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget -nv --spider --force-html -i bookmarks.html&#60;/td&#62;&#60;td&#62;Check links in a file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;wget --mirror http://www.example.com/&#60;/td&#62;&#60;td&#62;Efficiently update a local copy of a site (handy from cron)&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;net&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;networking&#60;/b&#62; (Note ifconfig, route, mii-tool, nslookup commands are obsolete)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;ethtool&#60;/acronym&#62; eth0&#60;/td&#62;&#60;td&#62;Show status of ethernet interface eth0&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ethtool --change eth0 autoneg off speed 100 duplex full&#60;/td&#62;&#60;td&#62;Manually set ethernet interface speed&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;iwconfig&#60;/acronym&#62; eth1&#60;/td&#62;&#60;td&#62;Show status of wireless interface eth1&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;iwconfig eth1 rate 1Mb/s fixed&#60;/td&#62;&#60;td&#62;Manually set wireless interface speed&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;iwlist&#60;/acronym&#62; scan&#60;/td&#62;&#60;td&#62;List wireless networks in range&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;ip&#60;/acronym&#62; link show&#60;/td&#62;&#60;td&#62;List network interfaces&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip link set dev eth0 name wan&#60;/td&#62;&#60;td&#62;Rename interface eth0 to wan&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip link set dev eth0 up&#60;/td&#62;&#60;td&#62;Bring interface eth0 up (or down)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip addr show&#60;/td&#62;&#60;td&#62;List addresses for interfaces&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip addr add 1.2.3.4/24 brd + dev eth0&#60;/td&#62;&#60;td&#62;Add (or del) ip and mask (255.255.255.0)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip route show&#60;/td&#62;&#60;td&#62;List routing table&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ip route add default via 1.2.3.254&#60;/td&#62;&#60;td&#62;Set default gateway to 1.2.3.254&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;host pixelbeat.org&#60;/td&#62;&#60;td&#62;Lookup DNS ip address for name or vice versa&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;hostname -i&#60;/td&#62;&#60;td&#62;Lookup local ip address (equivalent to host `hostname`)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;whois pixelbeat.org&#60;/td&#62;&#60;td&#62;Lookup whois info for hostname or ip address&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;netstat -tupl&#60;/td&#62;&#60;td&#62;List internet services on a system&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;netstat -tup&#60;/td&#62;&#60;td&#62;List active connections to/from system&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;windows&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;windows networking&#60;/b&#62; (Note samba is the package that provides all this windows specific networking support)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;smbtree&#60;/td&#62;&#60;td&#62;Find windows machines. See also findsmb&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;nmblookup -A 1.2.3.4&#60;/td&#62;&#60;td&#62;Find the windows (netbios) name associated with ip address&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;smbclient -L windows&#95;box&#60;/td&#62;&#60;td&#62;List shares on windows machine or samba server&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mount -t smbfs -o fmask&#61;666,guest //windows&#95;box/share /mnt/share&#60;/td&#62;&#60;td&#62;Mount a windows share&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;message&#39; &#124; smbclient -M windows&#95;box&#60;/td&#62;&#60;td&#62;Send popup to windows machine (off by default in XP sp2)&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;text&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;text manipulation&#60;/b&#62; (Note sed uses stdin and stdout. Newer versions support inplace editing with the -i option)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;s/string1/string2/g&#39;&#60;/td&#62;&#60;td&#62;Replace string1 with string2&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;s/\(.&#42;\)1/\12/g&#39;&#60;/td&#62;&#60;td&#62;Modify anystring1 to anystring2&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;/ &#42;#/d; /^ &#42;$/d&#39;&#60;/td&#62;&#60;td&#62;Remove comments and blank lines&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;:a; /\\$/N; s/\\\n//; ta&#39;&#60;/td&#62;&#60;td&#62;Concatenate lines with trailing \&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;s/&#91; \t]&#42;$//&#39;&#60;/td&#62;&#60;td&#62;Remove trailing spaces from lines&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed &#39;s/\(&#91;`&#38;quot;$\]\)/\\\1/g&#39;&#60;/td&#62;&#60;td&#62;Escape shell metacharacters active within double quotes&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;seq 10 &#124; sed &#34;s/^/&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp;&#38;nbsp;/; s/ &#42;\(.\{7,\}\)/\1/&#34;&#60;/td&#62;&#60;td&#62;Right align numbers&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed -n &#39;1000{p;&#60;acronym title&#61;&#34;quit ASAP&#34;&#62;q&#60;/acronym&#62;}&#39;&#60;/td&#62;&#60;td&#62;Print 1000th line&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed -n &#39;10,20p;&#60;acronym title&#61;&#34;quit ASAP&#34;&#62;20q&#60;/acronym&#62;&#39;&#60;/td&#62;&#60;td&#62;Print lines 10 to 20&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed -n &#39;s/.&#42;&#38;lt;title&#38;gt;\(.&#42;\)&#38;lt;\/title&#38;gt;.&#42;/\1/ip;&#60;acronym title&#61;&#34;quit after match&#34;&#62;T;q&#60;/acronym&#62;&#39;&#60;/td&#62;&#60;td&#62;Extract title from HTML web page&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sed -i 42d ~/.ssh/known&#95;hosts&#60;/td&#62;&#60;td&#62;Delete a particular line&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort -t. -k1,1n -k2,2n -k3,3n -k4,4n&#60;/td&#62;&#60;td&#62;Sort IPV4 ip addresses&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;Test&#39; &#124; tr &#39;&#91;:lower:]&#39; &#39;&#91;:upper:]&#39;&#60;/td&#62;&#60;td&#62;Case conversion&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tr -dc &#39;&#91;:print:]&#39; &#38;lt; /dev/urandom&#60;/td&#62;&#60;td&#62;Filter non printable characters&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tr -s &#39;&#91;:blank:]&#39; &#39;\t&#39; &#38;lt;/proc/diskstats &#124; cut -f4&#60;/td&#62;&#60;td&#62;cut fields separated by blanks&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;history &#124; wc -l&#60;/td&#62;&#60;td&#62;Count lines&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;sets&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;set operations&#60;/b&#62; (Note you can &#60;a href&#61;&#34;docs/env.html&#34;&#62;export LANG&#61;C&#60;/a&#62; for speed. Also these assume no duplicate lines within a file)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort file1 file2 &#124; uniq&#60;/td&#62;&#60;td&#62;&#60;acronym title&#61;&#34;Items in either file1 or file2&#34;&#62;Union&#60;/acronym&#62; of unsorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort file1 file2 &#124; uniq -d&#60;/td&#62;&#60;td&#62;&#60;acronym title&#61;&#34;Items both in file1 and file2&#34;&#62;Intersection&#60;/acronym&#62; of unsorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort file1 file1 file2 &#124; uniq -u&#60;/td&#62;&#60;td&#62;&#60;acronym title&#61;&#34;Items in file2 not in file1&#34;&#62;Difference&#60;/acronym&#62; of unsorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort file1 file2 &#124; uniq -u&#60;/td&#62;&#60;td&#62;&#60;acronym title&#61;&#34;Items in only one file&#34;&#62;Symmetric Difference&#60;/acronym&#62; of unsorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;join &#60;acronym title&#61;&#34;process whole line (assuming no NUL characters present)&#34;&#62;-t&#39;\0&#39;&#60;/acronym&#62; -a1 -a2 file1 file2&#60;/td&#62;&#60;td&#62;Union of sorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;join -t&#39;\0&#39; file1 file2&#60;/td&#62;&#60;td&#62;Intersection of sorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;join -t&#39;\0&#39; -v2 file1 file2&#60;/td&#62;&#60;td&#62;Difference of sorted files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;join -t&#39;\0&#39; -v1 -v2 file1 file2&#60;/td&#62;&#60;td&#62;Symmetric Difference of sorted files&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;math&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;math&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;(1 + sqrt(5))/2&#39; &#124; bc -l&#60;/td&#62;&#60;td&#62;Quick math (Calculate &#38;#966;). See also &#60;a href&#61;&#34;scripts/bc&#34;&#62;bc&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;seq -f &#39;4/&#37;g&#39; 1 2 99999 &#124; paste -sd-+ &#124; bc -l&#60;/td&#62;&#60;td&#62;Calculate &#60;font face&#61;&#34;times&#34;&#62;&#38;#960;&#60;/font&#62; the unix way&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;pad&#61;20; min&#61;64; (100&#42;10^6)/((pad+min)&#42;8)&#39; &#124; bc&#60;/td&#62;&#60;td&#62;More complex (int) e.g. This shows max FastE packet rate&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;pad&#61;20; min&#61;64; print (100E6)/((pad+min)&#42;8)&#39; &#124; python&#60;/td&#62;&#60;td&#62;Python handles scientific notation&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;pad&#61;20; plot &#91;64:1518] (100&#42;10&#42;&#42;6)/((pad+x)&#42;8)&#39; &#124; gnuplot -persist&#60;/td&#62;&#60;td&#62;Plot FastE packet rate vs packet size&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;obase&#61;16; ibase&#61;10; 64206&#39; &#124; bc&#60;/td&#62;&#60;td&#62;Base conversion (decimal to hexadecimal)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo $((0x2dec))&#60;/td&#62;&#60;td&#62;Base conversion (hex to dec) ((shell arithmetic expansion))&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;units -t &#39;100m/&#60;a href&#61;&#34;misc/usain&#95;bolt/&#34;&#62;9.58s&#60;/a&#62;&#39; &#39;miles/hour&#39;&#60;/td&#62;&#60;td&#62;Unit conversion (metric to imperial)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;units -t &#39;500GB&#39; &#39;GiB&#39;&#60;/td&#62;&#60;td&#62;Unit conversion (&#60;acronym title&#61;&#34;powers of 10&#34;&#62;SI&#60;/acronym&#62; to &#60;acronym title&#61;&#34;powers of 2&#34;&#62;IEC&#60;/acronym&#62; prefixes)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;units -t &#39;1 googol&#39;&#60;/td&#62;&#60;td&#62;Definition lookup&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;seq 100 &#124; (tr &#39;\n&#39; +; echo 0) &#124; bc&#60;/td&#62;&#60;td&#62;Add a column of numbers. See also &#60;a href&#61;&#34;scripts/add&#34;&#62;add&#60;/a&#62; and &#60;a href&#61;&#34;scripts/funcpy&#34;&#62;funcpy&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;dates&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;calendar&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cal -3&#60;/td&#62;&#60;td&#62;Display a calendar&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cal 9 1752&#60;/td&#62;&#60;td&#62;Display a calendar for a particular month year&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;date -d fri&#60;/td&#62;&#60;td&#62;What date is it this friday. See also &#60;a href&#61;&#34;scripts/day&#34;&#62;day&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#91; $(date -d &#34;tomorrow&#34; +&#37;d) &#61; &#34;01&#34; ] &#124;&#124; exit&#60;/td&#62;&#60;td&#62;exit a script unless it&#39;s the last day of the month&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;date --date&#61;&#39;25 Dec&#39; +&#37;A&#60;/td&#62;&#60;td&#62;What day does xmas fall on, this year&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;date --date&#61;&#39;&#64;2147483647&#39;&#60;/td&#62;&#60;td&#62;Convert seconds since the epoch (1970-01-01 UTC) to date&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;TZ&#61;&#39;America/Los&#95;Angeles&#39; date&#60;/td&#62;&#60;td&#62;What time is it on west coast of US (use tzselect to find TZ)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;date --date&#61;&#39;TZ&#61;&#34;America/Los&#95;Angeles&#34; 09:00 next Fri&#39;&#60;/td&#62;&#60;td&#62;What&#39;s the local time for 9AM next Friday on west coast US&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;locale&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;locales&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;printf &#38;quot;&#37;&#39;d\n&#38;quot; 1234&#60;/td&#62;&#60;td&#62;Print number with thousands grouping appropriate to locale&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;BLOCK&#95;SIZE&#61;\&#39;1 ls -l&#60;/td&#62;&#60;td&#62;Use locale thousands grouping in ls. See also &#60;a href&#61;&#34;../scripts/l&#34;&#62;l&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#38;quot;I live in `locale territory`&#38;quot;&#60;/td&#62;&#60;td&#62;Extract info from locale database&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;LANG&#61;en&#95;IE.utf8 locale int&#95;prefix&#60;/td&#62;&#60;td&#62;Lookup locale info for specific country. See also &#60;a href&#61;&#34;scripts/ccodes&#34;&#62;ccodes&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;locale -kc $(locale &#124; sed -n &#39;s/\(LC&#95;.\{4,\}\)&#61;.&#42;/\1/p&#39;) &#124; less&#60;/td&#62;&#60;td&#62;List fields available in locale database&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;recode&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;recode&#60;/b&#62; (Obsoletes iconv, dos2unix, unix2dos)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode -l &#124; less&#60;/td&#62;&#60;td&#62;Show available conversions (aliases on each line)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode windows-1252.. file&#95;to&#95;change.txt&#60;/td&#62;&#60;td&#62;Windows &#34;ansi&#34; to local charset (auto does CRLF conversion)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode utf-8/CRLF.. file&#95;to&#95;change.txt&#60;/td&#62;&#60;td&#62;Windows utf8 to local charset&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode iso-8859-15..utf8 file&#95;to&#95;change.txt&#60;/td&#62;&#60;td&#62;Latin9 (western europe) to utf8&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode ../b64 &#38;lt; file.txt &#38;gt; file.b64&#60;/td&#62;&#60;td&#62;Base64 encode&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode /qp.. &#38;lt; file.qp &#38;gt; file.txt&#60;/td&#62;&#60;td&#62;Quoted printable decode&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode ..HTML &#38;lt; file.txt &#38;gt; file.html&#60;/td&#62;&#60;td&#62;Text to HTML&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;recode -lf windows-1252 &#124; grep euro&#60;/td&#62;&#60;td&#62;Lookup &#60;a href&#61;&#34;docs/utf8.html&#34;&#62;table of characters&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo -n 0x80 &#124; recode latin-9/x1..dump&#60;/td&#62;&#60;td&#62;Show what a code represents in latin-9 charmap&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo -n 0x20AC &#124; recode ucs-2/x2..latin-9/x&#60;/td&#62;&#60;td&#62;Show latin-9 encoding&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo -n 0x20AC &#124; recode ucs-2/x2..utf-8/x&#60;/td&#62;&#60;td&#62;Show utf-8 encoding&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;CDs&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;&#60;acronym title&#61;&#34;Compact Disks&#34;&#62;CDs&#60;/acronym&#62;&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gzip &#38;lt; /dev/cdrom &#38;gt; cdrom.iso.gz&#60;/td&#62;&#60;td&#62;Save copy of data cdrom&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mkisofs -V LABEL -r dir &#124; gzip &#38;gt; cdrom.iso.gz&#60;/td&#62;&#60;td&#62;Create cdrom image from contents of dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mount -o loop cdrom.iso /mnt/dir&#60;/td&#62;&#60;td&#62;Mount the cdrom image at /mnt/dir (read only)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cdrecord -v dev&#61;/dev/cdrom blank&#61;fast&#60;/td&#62;&#60;td&#62;Clear a CDRW&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gzip -dc cdrom.iso.gz &#124; cdrecord -v dev&#61;/dev/cdrom -&#60;/td&#62;&#60;td&#62;Burn cdrom image (use dev&#61;ATAPI -scanbus to confirm dev)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cdparanoia -B&#60;/td&#62;&#60;td&#62;Rip audio tracks from CD to wav files in current dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cdrecord -v dev&#61;/dev/cdrom -audio -pad &#42;.wav&#60;/td&#62;&#60;td&#62;Make audio CD from all wavs in current dir (see also cdrdao)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;oggenc --tracknum&#61;&#39;track&#39; track.cdda.wav -o &#39;track.ogg&#39;&#60;/td&#62;&#60;td&#62;Make ogg file from wav file&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;disk&#95;space&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;disk space&#60;/b&#62; (See also &#60;a href&#61;&#34;fslint/&#34;&#62;FSlint&#60;/a&#62;)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ls -lSr&#60;/td&#62;&#60;td&#62;Show files by size, biggest last&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;du -s &#42; &#124; sort -k1,1rn &#124; head&#60;/td&#62;&#60;td&#62;Show top disk users in current dir. See also &#60;a href&#61;&#34;scripts/dutop&#34;&#62;dutop&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;du -hs /home/&#42; &#124; sort -k1,1&#60;acronym title&#61;&#34;available since coreutils 7.5&#34;&#62;h&#60;/acronym&#62;&#60;/td&#62;&#60;td&#62;Sort paths by easy to interpret disk usage&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;df -h&#60;/td&#62;&#60;td&#62;Show free space on mounted filesystems&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;df -i&#60;/td&#62;&#60;td&#62;Show free inodes on mounted filesystems&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;fdisk&#60;/acronym&#62; -l&#60;/td&#62;&#60;td&#62;Show disks partitions sizes and types (run as root)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;docs/packaging.html&#34;&#62;rpm&#60;/a&#62; -q -a --qf &#39;&#16;{SIZE}\t&#37;{NAME}\n&#39; &#124; sort -k1,1n&#60;/td&#62;&#60;td&#62;List all &#60;a href&#61;&#34;docs/packaging.html&#34;&#62;packages&#60;/a&#62; by installed size (Bytes) on rpm distros&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;docs/packaging.html&#34;&#62;dpkg&#60;/a&#62;-query -W -f&#61;&#39;${Installed-Size;10}\t${Package}\n&#39; &#124; sort -k1,1n&#60;/td&#62;&#60;td&#62;List all &#60;a href&#61;&#34;docs/packaging.html&#34;&#62;packages&#60;/a&#62; by installed size (KBytes) on deb distros&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;dd bs&#61;1 seek&#61;2TB if&#61;/dev/null of&#61;ext3.test&#60;/td&#62;&#60;td&#62;Create a large test file (taking no space). See also &#60;a href&#61;&#34;scripts/truncate&#34;&#62;truncate&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#38;gt; file&#60;/td&#62;&#60;td&#62;truncate data of file or create an empty file&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;monitor&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;monitoring/debugging&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tail -f /var/log/messages&#60;/td&#62;&#60;td&#62;&#60;a href&#61;&#34;docs/web/access&#95;log/monitoring.html&#34;&#62;Monitor messages&#60;/a&#62; in a log file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;strace -c ls &#38;gt;/dev/null&#60;/td&#62;&#60;td&#62;Summarise/profile system calls made by command&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;strace -f -e open ls &#38;gt;/dev/null&#60;/td&#62;&#60;td&#62;List system calls made by command&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;strace -f -e trace&#61;write -e write&#61;1,2 ls &#38;gt;/dev/null&#60;/td&#62;&#60;td&#62;Monitor what&#39;s written to stdout and stderr&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ltrace -f -e getenv ls &#38;gt;/dev/null&#60;/td&#62;&#60;td&#62;List library calls made by command&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /usr/sbin/&#34;&#62;lsof&#60;/acronym&#62; -p &#60;acronym title&#61;&#34;process id of current shell&#34;&#62;$$&#60;/acronym&#62;&#60;/td&#62;&#60;td&#62;List paths that process id has open&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;lsof ~&#60;/td&#62;&#60;td&#62;List processes that have specified path open&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tcpdump not port 22&#60;/td&#62;&#60;td&#62;Show network traffic except ssh. See also &#60;a href&#61;&#34;scripts/tcpdump&#95;not&#95;me&#34;&#62;tcpdump&#95;not&#95;me&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ps -e -o pid,args --forest&#60;/td&#62;&#60;td&#62;List processes in a hierarchy&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ps -e -o pcpu,cpu,nice,state,cputime,args --sort pcpu &#124; sed &#39;/^ 0.0 /d&#39;&#60;/td&#62;&#60;td&#62;List processes by &#37; cpu usage&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ps -e -orss&#61;,args&#61; &#124; sort -b -k1,1n &#124; pr -TW$COLUMNS&#60;/td&#62;&#60;td&#62;List processes by mem (KB) usage. See also &#60;a href&#61;&#34;scripts/ps&#95;mem.py&#34;&#62;ps&#95;mem.py&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ps -C firefox-bin -L -o pid,tid,pcpu,state&#60;/td&#62;&#60;td&#62;List all threads for a particular process&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ps -p 1,$$ -o etime&#61;&#60;/td&#62;&#60;td&#62;List elapsed wall time for particular process IDs&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;last reboot&#60;/td&#62;&#60;td&#62;Show system reboot history&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;free -m&#60;/td&#62;&#60;td&#62;Show amount of (remaining) RAM (-m displays in MB)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;watch -n.1 &#39;cat /proc/interrupts&#39;&#60;/td&#62;&#60;td&#62;Watch changeable data continuously&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;udevadm monitor&#60;/td&#62;&#60;td&#62;Monitor udev events to help configure rules&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;sysinfo&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;system information&#60;/b&#62; (see also &#60;a href&#61;&#34;scripts/sysinfo&#34;&#62;sysinfo&#60;/a&#62;) (&#39;#&#39; means root access is required)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;uname -a&#60;/td&#62;&#60;td&#62;Show kernel version and system architecture&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;head -n1 /etc/issue&#60;/td&#62;&#60;td&#62;Show name and version of distribution&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cat /proc/partitions&#60;/td&#62;&#60;td&#62;Show all partitions registered on the system&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;grep MemTotal /proc/meminfo&#60;/td&#62;&#60;td&#62;Show RAM total seen by the system&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;grep &#34;model name&#34; /proc/cpuinfo&#60;/td&#62;&#60;td&#62;Show CPU(s) info&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;lspci&#60;/acronym&#62; -tv&#60;/td&#62;&#60;td&#62;Show PCI info&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;lsusb&#60;/acronym&#62; -tv&#60;/td&#62;&#60;td&#62;Show USB info&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mount &#124; column -t&#60;/td&#62;&#60;td&#62;List mounted filesystems on the system (and align output)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;grep -F capacity: /proc/acpi/battery/BAT0/info&#60;/td&#62;&#60;td&#62;Show state of cells in laptop battery&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;dmidecode -q &#124; less&#60;/td&#62;&#60;td&#62;Display SMBIOS/DMI information&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;smartctl -A /dev/sda &#124; grep Power&#95;On&#95;Hours&#60;/td&#62;&#60;td&#62;How long has this disk (system) been powered on in total&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;hdparm -i /dev/sda&#60;/td&#62;&#60;td&#62;Show info about disk sda&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;hdparm -tT /dev/sda&#60;/td&#62;&#60;td&#62;Do a read speed test on disk sda&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;badblocks -s /dev/sda&#60;/td&#62;&#60;td&#62;Test for unreadable blocks on disk sda&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;interactive&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;interactive&#60;/b&#62; (see also &#60;a href&#61;&#34;lkdb/&#34;&#62;linux keyboard shortcuts)&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;lkdb/readline.html&#34;&#62;readline&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Line editor used by bash, python, bc, gnuplot, ...&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;lkdb/screen.html&#34;&#62;screen&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Virtual terminals with detach capability, ...&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;lkdb/mc.html&#34;&#62;mc&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Powerful file manager that can browse rpm, tar, ftp, ssh, ...&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;docs/web/access&#95;log/analyzing.html&#34;&#62;gnuplot&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Interactive/scriptable graphing&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;links&#60;/td&#62;&#60;td&#62;Web browser&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;xdg-open &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;open a file or url with the registered desktop application&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;!--
&#60;tr&#62;&#60;td align&#61;&#34;center&#34; colspan&#61;&#34;3&#34;&#62;
&#60;div style&#61;&#34;padding-top:5px;&#34;&#62;
&#60;script type&#61;&#34;text/javascript&#34;&#62;&#60;!-
google&#95;ad&#95;client &#61; &#34;pub-3527575214508372&#34;;
google&#95;alternate&#95;color &#61; &#34;FFFFC0&#34;;
google&#95;ad&#95;width &#61; 728;
google&#95;ad&#95;height &#61; 90;
google&#95;ad&#95;format &#61; &#34;728x90&#95;as&#34;;
google&#95;ad&#95;type &#61; &#34;image&#34;;
//2006-10-04: cmdline&#95;banner
google&#95;ad&#95;channel &#61;&#34;2479280376&#34;;
google&#95;color&#95;border &#61; &#34;FFFFC0&#34;;
google&#95;color&#95;bg &#61; &#34;FFFFC0&#34;;
google&#95;color&#95;link &#61; &#34;000000&#34;;
google&#95;color&#95;text &#61; &#34;000000&#34;;
google&#95;color&#95;url &#61; &#34;000000&#34;;
//-&#62;&#60;/script&#62;
&#60;script type&#61;&#34;text/javascript&#34;
  src&#61;&#34;http://pagead2.googlesyndication.com/pagead/show&#95;ads.js&#34;&#62;
&#60;/script&#62;
&#60;/div&#62;
&#60;/td&#62;&#60;/tr&#62;
--&#62; 
<p />
&#60;/tbody&#62; 
&#60;/table&#62; 
<p />
<p />
<p />
&#60;table class&#61;&#34;pixelbeat&#34;&#62; 
&#60;tbody&#62; 
<p />
&#60;tr id&#61;&#34;misc&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;2&#34;&#62;&#60;b&#62;Command&#60;/b&#62;&#60;/td&#62;&#60;td&#62;&#60;b&#62;Description&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;grep &#60;b&#62;.&#60;/b&#62; /proc/sys/net/ipv4/&#42;&#60;/td&#62;&#60;td&#62;List the contents of flag files&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;set &#124; grep $USER&#60;/td&#62;&#60;td&#62;Search current &#60;a href&#61;&#34;env.html&#34;&#62;environment&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tr &#39;\0&#39; &#39;\n&#39; &#38;lt; /proc/$$/environ&#60;/td&#62;&#60;td&#62;Display the &#60;em&#62;startup&#60;/em&#62; environment for any process&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo $PATH &#124; tr : &#39;\n&#39;&#60;/td&#62;&#60;td&#62;Display the $PATH one per line&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;kill -0 $$ &#38;amp;&#38;amp; echo process exists and can accept signals&#60;/td&#62;&#60;td&#62;Check for the existence of a process (pid)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find /etc -readable &#124; xargs less -K -p&#39;&#42;&#60;font color&#61;&#34;gray&#34;&#62;ntp&#60;/font&#62;&#39; -j $((${LINES:-25}/2))&#60;/td&#62;&#60;td&#62;Search paths and data with full context. Use &#60;b&#62;n&#60;/b&#62; to iterate&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;nice&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Low impact admin&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;apt-get install &#34;package&#34; -o Acquire::http::Dl-Limit&#61;42 \&#60;br/&#62;-o Acquire::Queue-mode&#61;access&#60;/td&#62;&#60;td&#62;Rate limit apt-get to 42&#60;a href&#61;&#34;../speeds.html&#34;&#62;KB/s&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#39;wget url&#39; &#124; at 01:00&#60;/td&#62;&#60;td&#62;Download url at 1AM to current dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;apache2ctl configtest &#38;amp;&#38;amp; apache2ctl graceful&#60;/td&#62;&#60;td&#62;Restart apache if config is OK&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;nice openssl speed sha1&#60;/td&#62;&#60;td&#62;Run a low priority command (openssl benchmark)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;renice 19 -p $$; ionice -c3 -p $$&#60;/td&#62;&#60;td&#62;Make shell (script) low priority. Use for non interactive tasks&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;monitor&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Interactive monitoring&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;watch -t -n1 uptime&#60;/td&#62;&#60;td&#62;Clock with system load&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;htop -d 5&#60;/td&#62;&#60;td&#62;Better top (scrollable, tree view, lsof/strace integration, ...)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;iotop&#60;/td&#62;&#60;td&#62;What&#39;s doing I/O&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;watch -d -n30 &#34;nice &#60;a href&#61;&#34;../scripts/ps&#95;mem.py&#34;&#62;ps&#95;mem.py&#60;/a&#62; &#124; tail -n $((${LINES:-12}-2))&#34;&#60;/td&#62;&#60;td&#62;What&#39;s using RAM&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;iftop&#60;/td&#62;&#60;td&#62;What&#39;s using the network. See also iptraf&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mtr www.pixelbeat.org&#60;/td&#62;&#60;td&#62;ping and traceroute combined&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;utilities&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Useful utilities&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;http://www.ivarch.com/programs/pv.shtml&#34;&#62;pv&#60;/a&#62; &#38;lt; /dev/zero &#38;gt; /dev/null&#60;/td&#62;&#60;td&#62;Progress Viewer for data copying from files and pipes&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;http://code.google.com/p/wkhtmltopdf/&#34;&#62;wkhtml2pdf&#60;/a&#62; http://.../linux&#95;commands.html &#60;a href&#61;&#34;linux&#95;commands.pdf&#34;&#62;linux&#95;commands.pdf&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Make a pdf of a web page&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;http://www.gnu.org/software/coreutils/manual/coreutils.html#timeout-invocation&#34;&#62;timeout&#60;/a&#62; 1 sleep 3&#60;/td&#62;&#60;td&#62;run a command with bounded time. See also &#60;a href&#61;&#34;../scripts/timeout&#34;&#62;timeout&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;network&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Networking&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;python -m &#60;acronym title&#61;&#34;Use http.server for python 3&#34;&#62;SimpleHTTPServer&#60;/acronym&#62;&#60;/td&#62;&#60;td&#62;Serve current directory tree at &#60;a href&#61;&#34;http://localhost:8000/&#34;&#62;http://$HOSTNAME:8000/&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;openssl s&#95;client -connect www.google.com:443 &#38;lt;/dev/null 2&#38;gt;&#38;amp;0 &#124;&#60;br/&#62;openssl x509 -dates -noout&#60;/td&#62;&#60;td&#62;Display the date range for a site&#39;s certs&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;curl -I www.pixelbeat.org&#60;/td&#62;&#60;td&#62;Display the server headers for a web site&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;lsof -i tcp:80&#60;/td&#62;&#60;td&#62;What&#39;s using port 80&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;httpd -S&#60;/td&#62;&#60;td&#62;Display a list of apache virtual hosts&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;vim scp://user&#64;remote/&#60;font color&#61;&#34;gray&#34;&#62;/path/to/file&#60;/font&#62;&#60;/td&#62;&#60;td&#62;Edit remote file using local vim. Good for high latency links&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;curl -s http://www.pixelbeat.org/pixelbeat.asc &#124; gpg --import&#60;/td&#62;&#60;td&#62;Import a gpg key from the web&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;acronym title&#61;&#34;usually in /sbin/&#34;&#62;tc&#60;/acronym&#62; qdisc add dev lo root handle 1:0 netem delay 20msec&#60;/td&#62;&#60;td&#62;Add 20ms latency to loopback device (for testing)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tc qdisc del dev lo root&#60;/td&#62;&#60;td&#62;Remove latency added above&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;notification&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Notification&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#38;quot;DISPLAY&#61;$DISPLAY xmessage cooker&#38;quot; &#124; at &#34;NOW +30min&#34;&#60;/td&#62;&#60;td&#62;Popup reminder&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;notify-send &#34;subject&#34; &#34;message&#34;&#60;/td&#62;&#60;td&#62;Display a gnome popup notification&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#38;quot;mail -s &#39;go home&#39; P&#64;draigBrady.com &#38;lt; /dev/null&#38;quot; &#124; at 17:30&#60;/td&#62;&#60;td&#62;Email reminder&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;uuencode file name &#124; mail -s subject P&#64;draigBrady.com&#60;/td&#62;&#60;td&#62;Send a file via email&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;../scripts/ansi2html.sh&#34;&#62;ansi2html.sh&#60;/a&#62; &#124; mail -a &#34;Content-Type: text/html&#34; P&#64;draigBrady.com&#60;/td&#62;&#60;td&#62;Send/Generate HTML email&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;defaults&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Better &#60;a href&#61;&#34;power&#95;of&#95;the&#95;default.html&#34;&#62;default settings&#60;/a&#62;&#60;/b&#62; (useful in your &#60;a href&#61;&#34;../settings/.bashrc&#34;&#62;.bashrc&#60;/a&#62;)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tail -s.1 -f /var/log/messages&#60;/td&#62;&#60;td&#62;Display file additions more responsively&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;seq 100 &#124; tail -n $((${LINES:-12}-2))&#60;/td&#62;&#60;td&#62;Display as many lines as possible without scrolling&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;#&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;tcpdump -s0&#60;/td&#62;&#60;td&#62;Capture full network packets&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;functions&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Useful functions/aliases&#60;/b&#62; (useful in your &#60;a href&#61;&#34;../settings/.bashrc&#34;&#62;.bashrc&#60;/a&#62;)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;md () { mkdir -p &#34;$1&#34; &#38;amp;&#38;amp; cd &#34;$1&#34;; }&#60;/td&#62;&#60;td&#62;Change to a new directory&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;strerror() { python -c &#34;import os; print os.strerror($1)&#34;; }&#60;/td&#62;&#60;td&#62;Display the meaning of an &#60;a href&#61;&#34;../scripts/errno&#34;&#62;errno&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;plot() { { echo &#39;plot &#34;-&#34;&#39; &#34;$&#64;&#34;; cat; } &#124; gnuplot -persist; }&#60;/td&#62;&#60;td&#62;Plot stdin. (e.g: &#38;#8226; seq 1000 &#124; sed &#39;s/.&#42;/s(&#38;amp;)/&#39; &#124; bc -l &#124; plot)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;hili() { e&#61;&#34;$1&#34;; shift; grep --col&#61;always -Eih &#34;$e&#124;$&#34; &#34;$&#64;&#34;; }&#60;/td&#62;&#60;td&#62;highlight occurences of expr. (e.g: &#38;#8226; env &#124; hili $USER)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;alias hd&#61;&#39;od -Ax -tx1z -v&#39;&#60;/td&#62;&#60;td&#62;Hexdump. (usage e.g.: &#38;#8226; hd /proc/self/cmdline &#124; less)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;alias realpath&#61;&#39;readlink -f&#39;&#60;/td&#62;&#60;td&#62;Canonicalize path. (usage e.g.: &#38;#8226; realpath ~/../$USER)&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;multimedia&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Multimedia&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;DISPLAY&#61;:0.0 import -window root orig.png&#60;/td&#62;&#60;td&#62;Take a (remote) screenshot&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;convert -filter catrom -&#60;a href&#61;&#34;http://www.imagemagick.org/Usage/resize/&#34;&#62;resize&#60;/a&#62; &#39;600x&#38;gt;&#39; orig.png 600px&#95;wide.png&#60;/td&#62;&#60;td&#62;&#60;a href&#61;&#34;image&#95;manipulation/#resize&#34;&#62;Shrink&#60;/a&#62; to width, computer gen images or screenshots&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;mplayer -ao pcm -vo null -vc dummy /tmp/Flash&#42;&#60;/td&#62;&#60;td&#62;Extract audio from flash video to audiodump.wav&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ffmpeg -i filename.avi&#60;/td&#62;&#60;td&#62;Display info about multimedia file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;ffmpeg -f x11grab -s xga -r 25 -i :0 -sameq demo.mpg&#60;/td&#62;&#60;td&#62;Capture video of an X display&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;DVD&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;DVD&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;for i in $(seq 9); do ffmpeg -i $i.avi -target pal-dvd $i.mpg; done&#60;/td&#62;&#60;td&#62;Convert video to the correct encoding and aspect for DVD&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;dvdauthor -odvd -t -v &#34;pal,4:3,720xfull&#34; &#42;.mpg;dvdauthor -odvd -T&#60;/td&#62;&#60;td&#62;Build DVD file system. Use 16:9 for widescreen input&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;growisofs -dvd-compat -Z /dev/dvd -dvd-video dvd&#60;/td&#62;&#60;td&#62;Burn DVD file system to disc&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;unicode&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Unicode&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;python -c &#34;import unicodedata as u; print u.name(unichr(0x2028))&#34;&#60;/td&#62;&#60;td&#62;Lookup a unicode character&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;http://manpages.ubuntu.com/manpages/dapper/en/man1/uconv.1.html&#34;&#62;uconv&#60;/a&#62; -f utf8 -t utf8 -x nfc&#60;/td&#62;&#60;td&#62;&#60;a href&#61;&#34;unicode&#95;utils/#normalize&#34;&#62;Normalize&#60;/a&#62; combining characters&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;printf &#39;\300\200&#39; &#124; iconv -futf8 -tutf8 &#38;gt;/dev/null&#60;/td&#62;&#60;td&#62;Validate UTF-8&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;printf &#39;&#38;#360;TF8\n&#39; &#124; LANG&#61;C grep --color&#61;always &#39;&#91;^ -~]\+&#39;&#60;/td&#62;&#60;td&#62;Highlight non printable ASCII chars in UTF-8&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;fc-match -s &#34;sans:lang&#61;zh&#34;&#60;/td&#62;&#60;td&#62;List font match order for language and style&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;development&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Development&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gcc -march&#61;native -E -v -&#38;lt;/dev/null 2&#38;gt;&#38;amp;1&#124;sed -n &#39;s/.&#42;-mar/-mar/p&#39;&#60;/td&#62;&#60;td&#62;Show autodetected gcc tuning params. See also &#60;a href&#61;&#34;../scripts/gcccpuopt&#34;&#62;gcccpuopt&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;for i in $(seq 4); do { &#91; $i &#61; 1 ] &#38;amp;&#38;amp; wget &#60;a href&#61;&#34;http://www0.us.ioccc.org/2000/dhyang.c&#34;&#62;http://url.ie/6lko&#60;/a&#62; -qO-&#124;&#124;&#60;br/&#62;./a.out; } &#124; tee /dev/tty &#124; gcc -xc - 2&#38;gt;/dev/null; done&#60;/td&#62;&#60;td&#62;Compile and execute C code from stdin&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;cpp -dM /dev/null&#60;/td&#62;&#60;td&#62;Show all predefined macros&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo &#34;#include &#38;lt;features.h&#38;gt;&#34; &#124; cpp -dN &#124; grep &#34;#define &#95;&#95;USE&#95;&#34;&#60;/td&#62;&#60;td&#62;Show all glibc feature macros&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;gdb -tui&#60;/td&#62;&#60;td&#62;Debug showing source code context in &#60;a href&#61;&#34;../programming/debugger/#tui&#34;&#62;separate windows&#60;/a&#62;&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;xattr&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Extended Attributes&#60;/b&#62; (Note you may need to (re)mount with &#34;acl&#34; or &#34;user&#95;xattr&#34; options)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;getfacl &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Show &#60;acronym title&#61;&#34;Access Control Lists&#34;&#62;ACLs&#60;/acronym&#62; for file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;setfacl -m u:nobody:r &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Allow a specific user to read file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;setfacl -x u:nobody &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Delete a specific user&#39;s rights to file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;setfacl --default -m group:users:rw- dir/&#60;/td&#62;&#60;td&#62;Set umask for a for a specific dir&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;getcap file&#60;/td&#62;&#60;td&#62;Show capabilities for a program&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;setcap cap&#95;net&#95;raw+ep your&#95;gtk&#95;prog&#60;/td&#62;&#60;td&#62;Allow &#60;acronym title&#61;&#34;GTK programs can&#39;t run as root&#34;&#62;gtk program&#60;/acronym&#62; raw access to network&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;stat -c&#37;C &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Show SELinux context for file&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;chcon ... file&#60;/td&#62;&#60;td&#62;Set SELinux context for file (see also restorecon)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;getfattr -m- -d &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Show all extended attributes (includes selinux,acls,...)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;setfattr -n &#34;user.foo&#34; -v &#34;bar&#34; &#60;b&#62;.&#60;/b&#62;&#60;/td&#62;&#60;td&#62;Set arbitrary user attributes&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;bash&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;BASH specific&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;echo 123 &#124; tee &#38;gt;(tr 1 a)  &#124; tr 1 b&#60;/td&#62;&#60;td&#62;Split data to 2 commands (using process substitution)&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;&#60;a href&#61;&#34;../programming/diffs/#meld&#34;&#62;meld&#60;/a&#62; local&#95;file &#38;lt;(ssh host cat remote&#95;file)&#60;/td&#62;&#60;td&#62;Compare a local and remote file (using process substitution)&#60;/td&#62;&#60;/tr&#62; 
<p />
&#60;tr id&#61;&#34;multicore&#34; class&#61;&#34;pbtitle&#34;&#62;&#60;td colspan&#61;&#34;3&#34;&#62;&#60;b&#62;Multicore&#60;/b&#62;&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;taskset -c 0 &#60;a href&#61;&#34;http://www.gnu.org/software/coreutils/manual/coreutils.html#nproc-invocation&#34;&#62;nproc&#60;/a&#62;&#60;/td&#62;&#60;td&#62;Restrict a command to certain processors&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;#8226;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;find -type f -print0 &#124; xargs -r0 -P$(nproc) -n&#60;acronym title&#61;&#34;batch size for each parallel process&#34;&#62;10&#60;/acronym&#62; md5sum&#60;/td&#62;&#60;td&#62;Process files in parallel over available processors&#60;/td&#62;&#60;/tr&#62; 
  &#60;tr&#62;&#60;td&#62;&#38;nbsp;&#60;/td&#62;&#60;td class&#61;&#34;nw&#34;&#62;sort -m &#38;lt;(sort data1) &#38;lt;(sort data2) &#38;gt;data.sorted&#60;td&#62;Sort separate data files over 2 processors&#60;/td&#62;&#60;/tr&#62; 
&#60;/tbody&#62; 
&#60;/table&#62;
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-03-24T18:32:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry170">
 <title> 100 hectareas in ensenada </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry170</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;iframe width&#61;&#34;425&#34; height&#61;&#34;350&#34; frameborder&#61;&#34;0&#34; scrolling&#61;&#34;no&#34; marginheight&#61;&#34;0&#34; marginwidth&#61;&#34;0&#34; src&#61;&#34;http://maps.google.com/?ie&#61;UTF8&#38;amp;t&#61;p&#38;amp;ll&#61;32.266814,-116.136475&#38;amp;spn&#61;0.041223,0.110378&#38;amp;z&#61;13&#38;amp;output&#61;embed&#34;&#62;&#60;/iframe&#62;&#60;br /&#62;&#60;small&#62;&#60;a href&#61;&#34;http://maps.google.com/?ie&#61;UTF8&#38;amp;t&#61;p&#38;amp;ll&#61;32.266814,-116.136475&#38;amp;spn&#61;0.041223,0.110378&#38;amp;z&#61;13&#38;amp;source&#61;embed&#34; style&#61;&#34;color:#0000FF;text-align:left&#34;&#62;View Larger Map&#60;/a&#62;&#60;/small&#62;&#60;p /&#62;
listing:
   &#42; http://www.bienesonline.com/mexico/detalle-propiedad/RAV19401
<p />
pictures:
   &#42; https://picasaweb.google.com/jehurale/RanchoChimeneasSierraDeJuarez
   &#42; https://picasaweb.google.com/jehurale/RinconadaChimeneas
   &#42; &#91;&#91;http://maps.google.com/?ie&#61;UTF8&#38;ll&#61;32.266814,-116.136475&#38;spn&#61;0.191891,0.180244&#38;t&#61;p&#38;z&#61;13 satellite photos]]
<p />
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-03-22T18:16:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry169">
 <title> straw bale housing </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry169</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; http://en.wikipedia.org/wiki/Straw-bale&#95;construction&#60;p /&#62;
   &#42; http://www.balewatch.com/ - 59 plans
   &#42; http://www.solarhaven.org/StarterStrawBale.htm
   &#42; http://www.grisb.org/consulting.htm
   &#42; http://wiki.answers.com/Q/How&#95;many&#95;square&#95;bails&#95;can&#95;you&#95;get&#95;out&#95;of&#95;an&#95;acre&#95;of&#95;hay
   &#42; http://www.greenhomebuilding.com/strawbale.htm
<p />
   &#42; http://www.amazon.com/Design-Straw-Bale-Buildings-State/dp/0976491117
   &#42; http://www.amazon.com/Building-Straw-Gernot-Minke/dp/3764371714
   &#42; 
   &#42; 
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-03-03T18:14:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry168">
 <title> open source Deluxe Paint alternatives  </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry168</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; http://en.wikipedia.org/wiki/Deluxe&#95;Paint&#60;p /&#62;
   &#42; http://code.google.com/p/grafx2/
   &#42; &#91;&#91;http://www.memecode.com/image.php i.Mage]]
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-03-02T17:53:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry167">
 <title> open source (2d) platformer game (engines) </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry167</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; http://petermcclory.com/free-playable-2d-indie-platform-games/&#60;p /&#62;
ķITTABLE{}&#37;
&#124; &#42;Project&#42; &#124; &#42;Language&#42; &#124; &#42;Platforms&#42; &#124; &#42;Notes&#42; &#124;
&#124; &#91;&#91;http://secretmaryo.org/ Secret Maryo Chronicles]] &#124; C++ &#124; &#124; Inkscape &#124;
&#124; &#91;&#91;http://www.13thmonkey.org/~boris/jgame/ JGame]] &#124; Java &#124; Java (and mobile Java); android in progress &#124; &#124;
&#124; &#91;&#91;http://code.google.com/p/jetblade/ jetblade]] &#124; Python (and C) &#124; &#124; &#124;
<p />
&#37;IFDEFINEDTHEN{&#34;open source, 2d, platformer, game engine&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-03-02T16:35:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry166">
 <title> maryland lots </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry166</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://www.landwatch.com/Somerset-County-Maryland-Land-for-sale/pid/172345958
   &#42; http://www.landwatch.com/Saint-Marys-County-Maryland-Land-for-sale/pid/172584611
   &#42; http://www.landwatch.com/Kent-County-Maryland-Land-for-sale/pid/119859783
<p />
&#60;img src&#61;&#34;http://www.digital-topo-maps.com/county-map/maryland-county-map.gif&#34;&#62;&#60;br&#62;Map Courtesy of &#60;a href&#61;&#34;http://www.digital-topo-maps.com/county-map/maryland.shtml&#34;&#62;Digital-Topo-Maps.com&#60;/a&#62;
<p />
   &#42; http://www.dnr.state.md.us/land/rurallegacy/index.asp
   &#42; http://www.extension.umn.edu/distribution/naturalresources/DD0583.html
&#37;IFDEFINEDTHEN{&#34;land, maryland&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-02-22T00:14:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry165">
 <title> generating test data </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry165</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://search.cpan.org/~jingram/Data-Maker-0.27/lib/Data/Maker.pm
   &#42; http://search.cpan.org/~jasonk/Data-Faker-0.07/
<p />
   &#42; http://search.cpan.org/~tima/Text-Greeking-0.11/lib/Text/Greeking.pm
<p />
   &#42; http://www.kleimo.com/random/name.cfm
   &#42; http://www.fakenamegenerator.com/gen-random-us-us.php
   &#42; http://www.fakenamegenerator.com/order.php
   &#42; http://www.identitygenerator.com/&#37;IFDEFINEDTHEN{&#34;&amp;#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-02-15T20:59:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry164">
 <title> canning </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry164</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://www.foodinjars.com/2010/06/where-to-buy-jars-for-canning/&#37;IFDEFINEDTHEN{&#34;&amp;#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-01-20T05:49:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry163">
 <title> emacs tramp mode </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry163</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#61;C-x C-f /remotehost:filename  RET&#61;&#60;p /&#62;
   &#42; http://www.emacswiki.org/cgi-bin/wiki/TrampMode
<p />
(installed by default on ubuntu 10.10; TrampMode is a part of Emacs starting with version 22.1)
&#37;IFDEFINEDTHEN{&#34;emacs, remote, ssh&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-01-19T04:10:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry162">
 <title> emacs psvn </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry162</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://www.xsteve.at/prg/vc&#95;svn/
      &#42; http://www.tedcarnahan.com/2008/10/24/a-brief-introduction-to-emacs-psvn/&#37;IFDEFINEDTHEN{&#34;emacs, svn&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2011-01-19T04:05:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry160">
 <title> cvs2github </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry160</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; world foundry cvs
&#60;p /&#62;   &#42; http://www.eyrie.org/~eagle/notes/debian/git.html
   &#42; https://sourceforge.net/apps/trac/sourceforge/wiki/Git#Access
   &#42; http://github.com/WorldFoundry/World-Foundry
&#60;verbatim&#62;
  cd existing&#95;git&#95;repo
  git remote add origin git&#64;github.com:WorldFoundry/World-Foundry.git
  git push origin master
&#60;/verbatim&#62;
<p />
&#37;IFDEFINEDTHEN{&#34;cvs, git&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-04-30T20:30:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry159">
 <title> yo frankie! </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry159</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; a 3d level game created with blender
<p />
&#60;object width&#61;&#34;640&#34; height&#61;&#34;390&#34;&#62;&#60;param name&#61;&#34;movie&#34; value&#61;&#34;http://www.youtube.com/v/c7RRaEvWqJc&#38;hl&#61;en&#95;US&#38;feature&#61;player&#95;embedded&#38;version&#61;3&#34;&#62;&#60;/param&#62;&#60;param name&#61;&#34;allowFullScreen&#34; value&#61;&#34;true&#34;&#62;&#60;/param&#62;&#60;param name&#61;&#34;allowScriptAccess&#34; value&#61;&#34;always&#34;&#62;&#60;/param&#62;&#60;embed src&#61;&#34;http://www.youtube.com/v/c7RRaEvWqJc&#38;hl&#61;en&#95;US&#38;feature&#61;player&#95;embedded&#38;version&#61;3&#34; type&#61;&#34;application/x-shockwave-flash&#34; allowfullscreen&#61;&#34;true&#34; allowScriptAccess&#61;&#34;always&#34; width&#61;&#34;640&#34; height&#61;&#34;390&#34;&#62;&#60;/embed&#62;&#60;/object&#62;
&#60;p /&#62;http://www.yofrankie.org/
<p />
&#60;verbatim&#62;
wbniv&#64;wbniv-laptop:~/yofrankie$ svn info
Path: .
URL: https://svn.blender.org/svnroot/yofrankie
Repository Root: https://svn.blender.org/svnroot/yofrankie
Repository UUID: 25262666-f3c1-dd11-aff7-0030488c597c
Revision: 92
Node Kind: directory
Schedule: normal
Last Changed Author: campbellbarton
Last Changed Rev: 92
Last Changed Date: 2010-02-20 05:58:35 -0600 (Sat, 20 Feb 2010)
&#60;/verbatim&#62;
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-02-20T16:46:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry158">
 <title> distribute binary payloads bundled in a perl script </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry158</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;verbatim&#62;
my $data &#61; join( &#39;&#39;, &#60;main::DATA&#62; );
my &#64;archive &#61; ( $data &#61;~ /(begin 0?\d{3}.&#42;?end)/gs );     # SMELL: regex could be tighter
# make accessible via hash keyed off the uuencoded &#39;name&#39; field
my &#37;archive &#61; map { /^begin\s+0?\d{3}\s+(.+?)\n/; ( $1 &#61;&#62; $&#95; ) } &#64;archive;
&#60;/verbatim&#62;
&#60;p /&#62;in order to create a single, downloadable file for the Foswiki installer located at http://foswiki.org/Support/FoswikiOnLinuxSharedHostCommandShell, i needed a way to &#34;attach&#34; binary files to a perl script.  here&#39;s what i came up with:
<p /> <ol>
<li> &#61;uuencode&#61; the binary files,
</li> <li> place the pure perl module CPAN:Convert::UU at the end of my installation script,
</li> <li> place an &#61;&#95;&#95;END&#95;&#95;&#61; section below that,
</li> <li> and finally, below the &#61;&#95;&#95;END&#95;&#95;&#61;, the uuencoded binary files.
</li></ol> 
<p />
the resulting file looks (approximately) like this:
&#60;verbatim&#62;
#! /usr/bin/perl -w
# .
# .
exit 0;
<p />
package Convert::UU;
# .
# .
1;
&#95;&#95;END&#95;&#95;
begin 0644 Foswiki-1.0.9.tgz
M&#39;XL(`+P;4TL``^Q;6W,427;FU?H5N1(,$JLNJ74#M,!8&#64;!BP$;&#34;26+R&#62;BR&#42;&#91;
M&#42;KL&#91;475EN;)&#42;4A/\F7GT`P^.&#62;?.K&#95;IB&#95;&#60;S+KUMVZ8#&#39;K&#60;.SVQ(CNJJR3YWZ^
.
.
7^?&#91;Y&#95;OG^^?&#91;Y&#95;OES/&#95;\&#95;GLANXP!`\0``
`
end
begin 0644 FastCGIEngineContrib.tgz
M&#39;XL(`&#39;.91$L``^Q&#60;&#62;U?;2++/W&#95;H4&#39;0(+)&#39;X`&#34;62.P4P&#60;8QC?Y75M,YD&#60;AN7(
.
.
MI&#95;4RO3J$JD44B:;M5FW&#38;C&#64;0WGZ]L&#91;5-&#34;\94X?3.540],&#91;R+L+&#61;,R+&#61;,R+&#61;,R
4+&#61;,R+&#61;,R+&#61;,/G?X+C&#64;&#38;&#42;80&#34;&#64;````
`
end
&#60;/verbatim&#62;
<p />
the code snippet above searches for the files in the &#61;&#95;&#95;DATA&#95;&#95;&#61; section, and makes the uuencoded files available to the script by either an array index or a hash lookup in the &#61;archive&#61; variables:
<p />
&#60;verbatim&#62;
# use the first slot (0), which is spec&#39;ed to contain a Foswiki distribution
my ($binfile) &#61; Convert::UU::uudecode( $archive&#91;0] );  
my ($binfile) &#61; Convert::UU::uudecode( $archive{&#39;FastCGIEngineContrib.tgz&#39;} );
&#60;/verbatim&#62;
<p />
for distribution, &#61;gzip&#61; the script file, and everything shrinks back down to &#95;almost&#95; the same size as it all was before uuencoding everything.
<p />
TODO: yes, i should make the &#34;parser&#34; &#61;uudecode&#61; the &#34;files&#34;, too.
&#37;IFDEFINEDTHEN{&#34;Foswiki, sysadmin&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-02-09T06:56:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry157">
 <title> so you want to marry a mexican? </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry157</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; 
http://www.mexconnect.com/articles/747-so-you-want-to-marry-a-mexican
&#60;p /&#62;&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-02-08T03:43:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry154">
 <title> upgrading BlogPlugin to Foswiki </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry154</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; SubjectCategory seems to be broken
&#60;p /&#62;
required changes: <ol>
<li> de-(T)mWiki
</li></ol> 
<p /> <ol>
 <li>
 <ol>
<li> TWikiForm -&#62; WikiForm; TWikiForms -&#62; WikiForms; TWikiFormAttribute -&#62; WikiFormAttribute; RenderTWikiFormList -&#62; RenderWikiFormList         &#42; &#61;sed -i -e &#39;s/TWikiForm/WikiForm/g&#39; &#42;.txt&#61;
</li> <li> RenderNewTWikiTopicButton -&#62; RenderNewWikiTopicButton         &#42; &#61;sed -i -e &#39;s/TWikiTopic/WikiTopic/g&#39; &#42;.txt&#61;
</li></ol> 
</li></ol> 
<p />
RenderBlogArchiveLex.txt
&#60; ~~~   map&#61;&#34;twiki&#61;TWiki&#34;
&#62; ~~~   map&#61;&#34;foswiki&#61;Foswiki&#34;
<p />
TWikiForm.txt
&#60; WikiForms add structured information to twiki topics.
&#62; WikiForms add structured information to topics.
<p />
TWikiTopic.txt (normal TWiki topic-&#62;normal topic)
<p /> <ol>
 <li>
 <ol>
<li> remaining TWiki -&#62; Foswiki         &#42; &#61;sed -i -e &#39;s/TWiki/Foswiki/g&#39; &#42;.txt&#61;
</li></ol> 
</li></ol> 
<p />
&#61;sed -i -e &#39;s/value&#61;&#34;enabled&#34;/value&#61;&#34;published&#34;/&#39; BlogEntry???.txt&#61;
&#61;sed -i -e &#39;s/value&#61;&#34;disabled&#34;/value&#61;&#34;unpublished&#34;/&#39; BlogEntry???.txt&#61;
<p />
&#60;verbatim&#62;
changed RenderBlogEntry.txt: &#60;span class&#61;\&#34;blogAuthor\&#34;&#62;by &#91;&#91;Main.WillNorris.$formfield(BlogAuthor)]&#91;$formfield(BlogAuthor)]] &#60;/span&#62;
to: &#60;span class&#61;\&#34;blogAuthor\&#34;&#62;by &#91;&#91;&#37;USERSWEB&#37;.$formfield(BlogAuthor)]&#91;$formfield(BlogAuthor)]] &#60;/span&#62;
&#60;/verbatim&#62;
<p />
still to do:
<p /> <ol>
<li> enabled/disabled -&#62; published/unpublished      &#42; need to support topics with either set      &#42; BlogEntry, BlogEntryForm, BlogPageForm, RenderArchives, RenderBlogArchiveCat, RenderBlogArchiveChron, RenderBlogArchiveHitList, RenderBlogArchiveTag, RenderBlogEntry, RenderCategories, RenderDocNavigation, RenderFrontPage, RenderFrontTeaser, RenderPages, RenderRecentPostings, RenderRelatedEntries, RenderUnpublishedBlogEntries, WebAtom, WebAtomTeaser, WebRss, WebRssCombined, WebRssTeaser
</li></ol> 
<p />
&#60;verbatim&#62;
&#60;/verbatim&#62;
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-01-20T02:43:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry152">
 <title> add comments to system docs at foswiki.org (like the php online docs) </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry152</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; http://www.twiki.org/irc/irclogger&#95;log/twiki?date&#61;2004-09-05,Sun&#38;sel&#61;205#l201
&#37;IFDEFINEDTHEN{&#34;&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2010-01-15T08:23:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> 
<item rdf:about="http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry151">
 <title> marriage in quebec </title>
 <link>http://wiki.biohack.net/bin/view/Main.WillNorris/BlogEntry151</link>
 <description>  &#37;IFDEFINEDTHEN{&#34;BlogEntry&#34; as&#61;&#34;WikiTopic&#34; glue&#61;&#34;off&#34;}&#37;  &#37;FIDEFINED&#37; &#60;p /&#62;
   &#42; &#91;&#91;http://www.justice.gouv.qc.ca/english/formulaires/mariage/celebrant-a.htm]&#91;Request for the Designation of an Officiant of a Marriage or Civil Union (SJ-893A)]]
   &#42; &#91;&#91;http://www.justice.gouv.qc.ca/english/formulaires/mariage/mariage-c-a.htm]&#91;Civil Marriage - General Information (SJ-217A)]]
   &#42; &#91;&#91;http://www.justice.gouv.qc.ca/english/publications/generale/tarifs-a.htm#marriage]&#91;Civil marriage and civil union costs]] - CDN$247
&#37;IFDEFINEDTHEN{&#34;marriage quebec canada&#34; glue&#61;&#34;off&#34;}&#37; &#60;p /&#62;&#60;b&#62;Tags&#60;/b&#62;: &#37;FORMATLIST{&#34;$test&#34; sort&#61;&#34;on&#34; format&#61;&#34;&#60;a href&#61;\&#34;http://wiki.biohack.net/bin/view/Main.WillNorris/BlogArchive?mode&#61;tag&#38;search&#61;$1\&#34; rel&#61;\&#34;tag\&#34;&#62;$1&#60;/a&#62;&#34; }&#37; &#37;FIDEFINED&#37; </description>
 <dc:creator>WillNorris</dc:creator>
 <dc:date>2009-11-18T18:05:00Z</dc:date>
 <dc:subject></dc:subject> <dc:contributor>
 <rdf:Description link="http://wiki.biohack.net/bin/view/Main/WillNorris">
 <rdf:value>WillNorris</rdf:value>
 </rdf:Description>
 </dc:contributor>
 </item> </rdf:RDF>
