<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8431628057474413200</id><updated>2011-11-16T20:55:20.123-08:00</updated><title type='text'>Blackboard</title><subtitle type='html'>play opensource</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>29</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-8039668320456950062</id><published>2011-11-16T20:43:00.001-08:00</published><updated>2011-11-16T20:55:20.146-08:00</updated><title type='text'>mac bite 2 -- tamil fonts to mac 10.6</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Steps to make mac support tamil fonts.&lt;br /&gt;&lt;br /&gt;1. System Preferences -&amp;gt; Language and Text -&amp;gt; Input Sources&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select Tamil Input Method, Anjal and Tamil99&lt;br /&gt;&lt;br /&gt;2.&amp;nbsp; Now you can see on the system tray Tami99 and Anjal icons(dropdown) along with American Flag Icon(should be next to your volume control).&lt;br /&gt;&lt;br /&gt;3. Download tamil font and install. You can find one from&amp;nbsp;&lt;a href="http://www.kamban.com.au/fonts/maduram.ttf"&gt;kamban.com&lt;/a&gt;. Couple of clicks should get the fonts installed under user fonts.&lt;br /&gt;&lt;br /&gt;4. Restart your browser, now you can read all the tamil websites.&lt;br /&gt;&lt;br /&gt;5. You can find more resources on typing in tamil format &lt;a href="http://www.greenwaysroad.com/blogs/vasuBlog/index.php/2007/12/01/tamil-and-devanagari-fonts-in-mac-os-x/"&gt;here&lt;/a&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-8039668320456950062?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/8039668320456950062/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=8039668320456950062' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8039668320456950062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8039668320456950062'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/11/mac-bite-2-tamil-fonts-to-mac-106.html' title='mac bite 2 -- tamil fonts to mac 10.6'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-3581802433948529117</id><published>2011-10-13T03:50:00.000-07:00</published><updated>2011-10-13T03:50:10.334-07:00</updated><title type='text'>CMUSphinx - Head Start</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;This article is just a head start to get CMPSphinx(voice recognition) working on ubuntu(should work on most of the stable linux flavours).&lt;br /&gt;&lt;br /&gt;The download link in the CMUSphinx might sometimes lead you to sphinx2, &lt;a href="http://sourceforge.net/projects/cmusphinx/files/sphinx4/"&gt;click here&lt;/a&gt; to get the latest version.&amp;nbsp; Download both the bin and src zip files.&lt;br /&gt;&lt;br /&gt;Install jar&lt;br /&gt;&lt;br /&gt;&amp;gt;apt-get install openjdk-6-jdk&lt;br /&gt; &lt;br /&gt; Then use&lt;br /&gt;&lt;br /&gt;/Applications# jar xvf sphinx4-1.0beta6-bin.zip&lt;br /&gt;&lt;br /&gt;--comment: it will inflate the folder&lt;br /&gt;&lt;br /&gt;/Applications# jar xvf sphinx4-1.0beta6-src.zip&lt;br /&gt;&lt;br /&gt;--comment: it will inflate the folder&lt;br /&gt;&lt;br /&gt;/Applications# cd sphinx4-1.0beta6&lt;br /&gt;&lt;br /&gt;Get a latest version of &lt;a href="http://ant.apache.org/bindownload.cgi"&gt;ant&lt;/a&gt; and untar it.&lt;br /&gt;&lt;br /&gt;Set up the environment variables&lt;br /&gt;/Applications# export ANT_HOME=/home/itsme/Downloads/Applications/apache-ant-1.8.2/&lt;br /&gt;&lt;br /&gt;&lt;b&gt;--note&lt;/b&gt;: I have my ant in this dir, your location may change based where you downloaded and untarred. &lt;br /&gt;&lt;br /&gt;/Applications# export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk/&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;--note&lt;/b&gt;: I have my java in this dir, your location may change based where you downloaded and untarred. &lt;br /&gt;&lt;br /&gt;/Applications# export PATH=/home/itsme/Downloads/Applications/apache-ant-1.8.2/bin/:/usr/lib/jvm/java-1.6.0-openjdk/bin/:$PATH&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;now its time to execute ant... you can see some stuffs setting up&lt;br /&gt;&lt;br /&gt;/Applications/sphinx4-1.0beta6# ant&lt;br /&gt;&lt;br /&gt;&lt;b&gt;--note&lt;/b&gt;: if you see that build.xml file is missing, do not panic, make sure you are in the right directory(here its sphinx4-1.0beta6) do an -ls you should notice a bulid.xml file, if not make sure that you downloaded the right file. Any other errors like unable to find the ant or jar make sure that the path&amp;nbsp; you set on the ENVIRONMENT VARIABLE is right&lt;br /&gt;&lt;br /&gt;once this is done try execute&lt;br /&gt;&lt;br /&gt;Applications/sphinx4-1.0beta6# java -mx312m -jar bin/HelloWorld.jar&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You should see something like&lt;br /&gt;&lt;br /&gt;Say: (Good morning | Hello) ( Bhiksha | Evandro | Paul | Philip | Rita | Will )&lt;br /&gt;Start speaking. Press Ctrl-C to quit.&lt;br /&gt;&lt;br /&gt;enjoy............&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-3581802433948529117?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/3581802433948529117/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=3581802433948529117' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3581802433948529117'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3581802433948529117'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/10/cmusphinx-head-start.html' title='CMUSphinx - Head Start'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-8665038301896901771</id><published>2011-10-05T01:30:00.000-07:00</published><updated>2011-10-05T01:30:07.790-07:00</updated><title type='text'>mac bite</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div style="color: #38761d;"&gt;&lt;b&gt;&lt;i&gt;mac&lt;/i&gt;&lt;/b&gt; &lt;b&gt;Beginners&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="color: #b6d7a8;"&gt;&lt;b&gt;    Fix backspace/delete when ssh'ing into Linux machines:&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;br /&gt;Go to Terminal preferences, select the Advanced tab and tick 'Delete sends Ctrl-H'. And that's it! Backspace should work as usual in ssh/screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-8665038301896901771?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/8665038301896901771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=8665038301896901771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8665038301896901771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8665038301896901771'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/10/mac-bite.html' title='mac bite'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-7483581757589889506</id><published>2011-07-23T11:58:00.000-07:00</published><updated>2011-07-23T12:03:32.150-07:00</updated><title type='text'>Useful Windows command line tool, handle.exe</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Handle v3.46&lt;br /&gt;&lt;br /&gt;Introduction&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ever wondered which program has a particular file or directory open? Now you can find out. Handle is a utility that displays information about open handles for any process in the system. You can use it to see the programs that have a file open, or to see the object types and names of all the handles of a program.&lt;br /&gt;&lt;br /&gt;You can also get a GUI-based version of this program, Process Explorer, here at Sysinternals.&lt;br /&gt;Installation&lt;br /&gt;&lt;br /&gt;You run Handle by typing "handle". You must have administrative privilege to run Handle.&lt;br /&gt;Usage&lt;br /&gt;&lt;br /&gt;Handle is targetted at searching for open file references, so if you do not specify any command-line parameters it will list the values of all the handles in the system that refer to open files and the names of the files. It also takes several parameters that modify this behavior.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;usage: handle [[-a] [-u] | [-c &lt;handle&gt; [-l] [-y]] | [-s]] [-p &lt;processname&gt;|&lt;pid&gt;&gt; [name]&lt;/span&gt;&lt;br /&gt;-a Dump information about all types of handles, not just those that refer to files. Other types include ports, Registry keys, synchronization primitives, threads, and processes.&lt;br /&gt;-c Closes the specified handle (interpreted as a hexadecimal number). You must specify the process by its PID.&lt;br /&gt;WARNING: Closing handles can cause application or system instability.&lt;br /&gt;-l Dump the sizes of pagefile-backed sections.&lt;br /&gt;-y Don't prompt for close handle confirmation.&lt;br /&gt;-s Print count of each type of handle open.&lt;br /&gt;-u Show the owning user name when searching for handles.&lt;br /&gt;-p Instead of examining all the handles in the system, this parameter narrows Handle's scan to those processes that begin with the name process. Thus:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;handle -p exp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;would dump the open files for all processes that start with "exp", which would include Explorer.&lt;br /&gt;name &lt;br /&gt;&lt;br /&gt;This parameter is present so that you can direct Handle to search for references to an object with a particular name.&lt;br /&gt;For example, if you wanted to know which process (if any) has "c:\windows\system32" open you could type:&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;handle windows\system&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The name match is case-insensitive and the fragment specified can be anywhere in the paths you are interested in.&lt;br /&gt;Handle Output&lt;br /&gt;&lt;br /&gt;When not in search mode (enabled by specifying a name fragment as a parameter), Handle divides its output into sections for each process it is printing handle information for. Dashed lines are used as a separator, immediately below which you will see the process name and its process id (PID). Beneath the process name are listed handle values (in hexadecimal), the type of object the handle is associated with, and the name of the object if it has one.&lt;br /&gt;&lt;br /&gt;When in search mode, Handle prints the process names and id's are listed on the left side and the names of the objects that had a match are on the right.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;More Information&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can find more information on the Object Manager in Windows Internals, 4th Edition or by browsing the Object Manager name-space with WinObj.&lt;br /&gt;&lt;br /&gt;Microsoft Handle KB Articles&lt;br /&gt;&lt;br /&gt;The following Microsoft KB articles reference Handle for diagnosing or troubleshooting various problems:&lt;br /&gt;&lt;br /&gt;    245068: Err Msg: Access is Denied. You Don't Have Permissions or the File is in Use&lt;br /&gt;    276525: Your Computer May Stop Responding When You Monitor Open Handles&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;a href="http://technet.microsoft.com/en-us/sysinternals/bb896655"&gt;Download Link:&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;By Mark Russinovich&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-7483581757589889506?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/7483581757589889506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=7483581757589889506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/7483581757589889506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/7483581757589889506'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/07/useful-windows-command-line-tool.html' title='Useful Windows command line tool, handle.exe'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-736753047523341761</id><published>2011-07-21T15:45:00.000-07:00</published><updated>2011-07-21T15:51:13.056-07:00</updated><title type='text'>Firefox -- Disable process plugincontainer</title><content type='html'>Most of the times I notice that the process &lt;span style="font-weight:bold;"&gt;plugincontainer&lt;/span&gt; eats up my CPU, found that this process is initiated by firefox :( to as a crash protection. I want to disable it...&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; &lt;span style="font-weight:bold;"&gt;about:config&lt;/span&gt; on firefox location bar&lt;br /&gt;&lt;br /&gt;&gt;&gt;&gt; search for &lt;span style="font-weight:bold;"&gt;dom.ipc.plugins.enabled.* &lt;/span&gt;and set the preference to &lt;span style="font-weight:bold;"&gt;false&lt;/span&gt;(right click you will get the option to toggle the value).&lt;br /&gt;&lt;br /&gt;That is it you are done.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-736753047523341761?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/736753047523341761/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=736753047523341761' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/736753047523341761'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/736753047523341761'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/07/firefox-disable-process-plugincontainer.html' title='Firefox -- Disable process plugincontainer'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-1728435298589073677</id><published>2011-05-22T13:21:00.000-07:00</published><updated>2011-05-22T13:52:02.516-07:00</updated><title type='text'>Fixing firefox location bar search issues</title><content type='html'>Most of the time malware's(recently questscan) change firefox location bar search value, by default when you enter any contents which doesn't match a web link will be  used as a search keyword by google search engine. Example: You type 'blah blah' on your location bar it will take you to google.com with the results for search keyword 'blah blah'.&lt;br /&gt;&lt;br /&gt;The problem happens when your computer is affected by some malware or installation of some tool-bar's(ex: ask.com this will take you to ask search instead of google.com, though you remove the plug-in or the toolbar still you will be directed to ask.com.) Removing the tool-bar or fixing the malware will not always fix the problem.&lt;br /&gt;&lt;br /&gt;You have to do little more work to resolve it.&lt;br /&gt;&lt;br /&gt;Steps to restore the default search on location bar:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Open firefox and type about:config (Do it with extreme caution).&lt;br /&gt;&lt;br /&gt;2. On the search tab, type keyword.URL&lt;br /&gt;&lt;br /&gt;3. Change the status to default, type to string and the value to http://www.google.com/search?ie=UTF-8&amp;oe=UTF-8&amp;sourceid=navclient&amp;gfns=1&amp;q= &lt;br /&gt;&lt;br /&gt;4. Restart firefox.&lt;br /&gt;&lt;br /&gt;That is it, you are done.&lt;br /&gt;&lt;br /&gt;Tips: If you need to remove any unwanted entries in the firefox config, you can change the value to default and restart firefox, the entry will be removed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-1728435298589073677?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/1728435298589073677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=1728435298589073677' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1728435298589073677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1728435298589073677'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/05/fixing-firefox-location-bar-search.html' title='Fixing firefox location bar search issues'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-2889830496264950825</id><published>2011-04-09T10:14:00.000-07:00</published><updated>2011-04-09T10:18:06.824-07:00</updated><title type='text'>Ubuntu: Move your window buttons from left to right</title><content type='html'>Press Alt+F2 to get the RunApplication Window, type gconf-editor and press Enter, Move to Apps &gt; Metacity &gt; General.&lt;br /&gt;&lt;br /&gt;Change the button_layout option to 'menu:minimize,maximize,close'(no spaces between commans) and hit enter, enjoy the change&lt;br /&gt;&lt;br /&gt;Cheers!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-2889830496264950825?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/2889830496264950825/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=2889830496264950825' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/2889830496264950825'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/2889830496264950825'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/04/ubuntu-move-your-window-buttons-from.html' title='Ubuntu: Move your window buttons from left to right'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-8794132351279344259</id><published>2011-03-10T18:23:00.000-08:00</published><updated>2011-03-10T19:16:04.442-08:00</updated><title type='text'>Text to Speech Synthesis</title><content type='html'>As the part of research in signal handling, I discovered Text to Speech Synthesizer, though completely not relevant to what I want, I found this really interesting(geeks might feel as a pretty old story).&lt;br /&gt;&lt;br /&gt;Converting the text to speech is what I did with the &lt;a href="http://festvox.org/docs/manual-1.4.3/festival_toc.html"&gt;festival speech synthesis system&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I Did the testing on my ubuntu box, started from a simple apt-get install festival as a super user,  it went all good, but couldn't convert my text file to voice.&lt;br /&gt;&lt;br /&gt;I executed&lt;br /&gt;&lt;br /&gt;$festival --tts welcome.txt&lt;br /&gt;&lt;br /&gt;Error: No default voice found in ("/usr/share/festival/voices")&lt;br /&gt;either no voice unpacked or voice-apth is wrong&lt;br /&gt;Scheme interpreter will work but there is no voice to speak with.&lt;br /&gt;&lt;br /&gt;==== &lt;br /&gt;&lt;br /&gt;a little bit of google helped me with an answer that I have to install festvox-don which is a voice pack(apt-get install festvox-don).&lt;br /&gt;&lt;br /&gt;It worked this time with a simple,&lt;br /&gt;&lt;br /&gt;$festival --tts welcome.txt (I can hear the voice).&lt;br /&gt;&lt;br /&gt;this made me to look programming it and use it in a more customized way. Here it goes cpan has countable no of modules to program this in perl.&lt;br /&gt;&lt;br /&gt;Will add more codes here shortly. And my research on signal handling is still pending :(&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-8794132351279344259?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/8794132351279344259/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=8794132351279344259' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8794132351279344259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8794132351279344259'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2011/03/text-to-speech-synthesis.html' title='Text to Speech Synthesis'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-6829300527853521727</id><published>2010-08-25T12:36:00.000-07:00</published><updated>2010-08-25T12:44:32.828-07:00</updated><title type='text'>Signal Handling in Perl - Linux</title><content type='html'>Handling operating system signals will really help in building a efficient code.&lt;br /&gt;&lt;br /&gt;How ctrl+c is handled by Operating Systems? &lt;br /&gt;&lt;br /&gt;ctrl+c doesnt affect the process directly, the terminal driver recoginizes the key strokes and sends SIGINT to every process in the foreground.&lt;br /&gt;&lt;br /&gt;type stty -a on the terminal to see the current settings,&lt;br /&gt;&lt;br /&gt;mine looks like&lt;br /&gt;&lt;br /&gt;stty -a&lt;br /&gt;speed 38400 baud; rows 70; columns 203; line = 0;&lt;br /&gt;intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = &lt;undef&gt;; eol2 = &lt;undef&gt;; swtch = &lt;undef&gt;; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;&lt;br /&gt;-parenb -parodd cs8 -hupcl -cstopb cread -clocal -crtscts&lt;br /&gt;-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc -ixany -imaxbel -iutf8&lt;br /&gt;opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0&lt;br /&gt;isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;A sample code to handle ctrl+c&lt;br /&gt;&lt;br /&gt;#!/usr/bin/perl&lt;br /&gt;&lt;br /&gt;use warnings;&lt;br /&gt;use strict;&lt;br /&gt;&lt;br /&gt;while(1){&lt;br /&gt;        print "Hello David\n";&lt;br /&gt;        sleep 2;&lt;br /&gt;        $SIG{INT} = \&amp;warn_him;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;sub warn_him{&lt;br /&gt;        $SIG{INT} = \&amp;warn_him;&lt;br /&gt;        print "Do you really want to terminate (y/n)?:";&lt;br /&gt;        my $ans = &lt;STDIN&gt;;&lt;br /&gt;        chomp $ans;&lt;br /&gt;        if($ans eq 'y'){&lt;br /&gt;                exit 0;&lt;br /&gt;        }else{&lt;br /&gt;                return 1;&lt;br /&gt;        }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Simple huh?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-6829300527853521727?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/6829300527853521727/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=6829300527853521727' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6829300527853521727'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6829300527853521727'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/08/signal-handling-in-perl-linux.html' title='Signal Handling in Perl - Linux'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-6082955799275278189</id><published>2010-06-08T20:30:00.000-07:00</published><updated>2010-06-08T20:46:10.532-07:00</updated><title type='text'>Password Protected Files Under Linux</title><content type='html'>I couldnt find a better way than this to password protect a dir, here is wat I did&lt;br /&gt;&lt;br /&gt;I used &lt;a href="http://www.gnupg.org/"&gt;gunpg&lt;/a&gt;, the complete and free implementation of the OpenPGP. GnuPG allows to encrypt and sign your data. A simple three step process I did to protect my files is below, for more information you can check out http://www.dewinter.com/gnupg_howto/english/GPGMiniHowto.html&lt;br /&gt;&lt;br /&gt;1. Archive(tar) the directory that you want to pass protect.&lt;br /&gt;&lt;br /&gt;example: &gt; tar -cf my_test_dir.tar /my_test_dir&lt;br /&gt;&lt;br /&gt;2. Use gpg to set up the password&lt;br /&gt;&lt;br /&gt;example: &gt; gpg -c my_test_dir.tar&lt;br /&gt;&lt;br /&gt;this command will ask you to enter the password for the file once done, this will create a file my_test_dir.gpg&lt;br /&gt;&lt;br /&gt;3. To open the file use gpg my_test_dir.gpg, in gnome a pop up will appear for the password.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-6082955799275278189?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/6082955799275278189/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=6082955799275278189' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6082955799275278189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6082955799275278189'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/06/password-protected-files-under-linux.html' title='Password Protected Files Under Linux'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-5148973501137947728</id><published>2010-05-29T18:33:00.000-07:00</published><updated>2010-05-29T18:45:44.506-07:00</updated><title type='text'>Windows Mediaplayer for Firefox on Linux</title><content type='html'>Getting WMPlayer for firefox under Linux? That's really simple, all we have to do is to install two gnome components.&lt;br /&gt;&lt;br /&gt;1. gnome-mplayer&lt;br /&gt;2. gecko-mediaplayer&lt;br /&gt;&lt;br /&gt;Mplayer is a popular Linux media player that can play back Windows Media files. In order to use Mplayer to play Windows Media stream in Firefox, you must install two packages named gnome-mplayer and gecko-mediaplayer. Your Linux distribution may have these packages readily available to install. &lt;br /&gt;&lt;br /&gt;You can test this with http://plugindoc.mozdev.org/testpages/wmp11.html&lt;br /&gt;&lt;br /&gt;It works!!! Have Fun :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-5148973501137947728?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/5148973501137947728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=5148973501137947728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/5148973501137947728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/5148973501137947728'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/05/windows-mediaplayer-for-firefox-on.html' title='Windows Mediaplayer for Firefox on Linux'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-1684925497072996138</id><published>2010-05-22T13:14:00.001-07:00</published><updated>2010-05-22T13:25:31.758-07:00</updated><title type='text'>Copying Files with SCP</title><content type='html'>SCP: Unix/Linux Secured Copy Program&lt;br /&gt;&lt;br /&gt;SCP, a tool for copying(transferring) files over a local and remote computer securely.&lt;br /&gt;&lt;br /&gt;Copying File to Host&lt;br /&gt;&lt;br /&gt;scp SourceFile user@host:directory/TargetFile&lt;br /&gt;&lt;br /&gt;Copying File from Host&lt;br /&gt;&lt;br /&gt;scp user@host:directory/SourceFile TargetFile&lt;br /&gt;&lt;br /&gt;these are the basic way that scp are used mostly&lt;br /&gt;&lt;br /&gt;Moreover, SCP can be used with various commandline options(a man page should guide you).&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;If you have a VM(Virtual Machine like Xen) running on remote host which has only one port opened (eg: 5052) to the external world(for ssh: ssh user@my_remote_vm -p 5052). We can use the same SSH port to copy files with SCP.&lt;br /&gt;&lt;br /&gt;Here it is,&lt;br /&gt;&lt;br /&gt;scp -P 5052 user@my_remote_vm:/my_files/file_name.pl .&lt;br /&gt;&lt;br /&gt;this should make a connection on port 5052(u can specify your own), to copy files.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-1684925497072996138?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/1684925497072996138/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=1684925497072996138' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1684925497072996138'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1684925497072996138'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/05/writing-simple-tcp-serverclient.html' title='Copying Files with SCP'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-3986949546757896348</id><published>2010-04-21T23:44:00.000-07:00</published><updated>2010-04-21T23:49:17.716-07:00</updated><title type='text'>Error "Could not open a connection to your authentication agent"</title><content type='html'>While Loading SSH Keys, you might come across a similar  error "&lt;span style="font-weight:bold;"&gt;Could not open a connection to your authentication agent&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;I fixed this by setting up &lt;span style="font-style:italic;"&gt;ssh-agent /bin/bash&lt;span style="font-weight:bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;davidsnt@mydomain:~/keys$ ssh-add *-keys&lt;br /&gt;Could not open a connection to your authentication agent.&lt;br /&gt;davidsnt@mydomain:~/keys$ ssh-agent /bin/bash&lt;br /&gt;davidsnt@mydomain:~/keys$ ssh-add *-keys&lt;br /&gt;Enter passphrase for davidsnt:&lt;br /&gt;&lt;br /&gt;More info on: http://linuxgazette.net/67/nazario2.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-3986949546757896348?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/3986949546757896348/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=3986949546757896348' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3986949546757896348'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3986949546757896348'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/04/error-could-not-open-connection-to-your.html' title='Error &quot;Could not open a connection to your authentication agent&quot;'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-5581223620287450384</id><published>2010-03-04T12:20:00.000-08:00</published><updated>2011-09-04T14:13:29.577-07:00</updated><title type='text'>Playing with Linux Commands - Part 2</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;1. Reading Lines and Appending numbers to it&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cat -n ip_list | head -n5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Displays the first five lines with line number&lt;br /&gt;&lt;br /&gt;similarly &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cat -n ip_list | tail -n5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;lists the last five lines from the file with the line numbers.&lt;br /&gt;&lt;br /&gt;2. Reading specific lines(like from line 20 to 35)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;sed -n 20, 35p ip_list&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;*here ip_list is the name of the file where the stored my IP's&lt;br /&gt;&lt;br /&gt;3. Reading from last&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;tac -n ip_list&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;4. Running a for loop on command line&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;for i in $IP; do scp filename$i root@myhomepc.in; done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5. While loop on command line&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; i=0; while [[ $i -lt 8 ]]; do scp filename$i root@myhomepc.in; (( i++ )); done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;6. cut - example&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; for arg in `ls *.pl.bak|cut -d '.' -f 1,2`; do echo $arg; done&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;if you have a list of file names with .pl.bak then this command will remove the .bak and print filename.pl&lt;br /&gt;&lt;br /&gt;7. Create multiple directories at once.&lt;br /&gt; &lt;br /&gt;&lt;b&gt;mkdir -p /home/myhomepc/logs{1,2,3,4}&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;this will create dirs like logs1, logs2, logs3, logs4&lt;br /&gt;&lt;br /&gt;if you want to delete all these dirs at once, use&lt;br /&gt;&lt;br /&gt;&lt;b&gt;rm -r &lt;/b&gt;&lt;b&gt;/home/myhomepc/logs{1,2,3,4}&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-5581223620287450384?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/5581223620287450384/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=5581223620287450384' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/5581223620287450384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/5581223620287450384'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2010/03/reading-lines-from-text-file-command.html' title='Playing with Linux Commands - Part 2'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-4300464194720184514</id><published>2009-12-19T12:31:00.000-08:00</published><updated>2010-01-05T10:55:50.736-08:00</updated><title type='text'>Type Globbing in Perl</title><content type='html'>Type Glob&lt;br /&gt;&lt;br /&gt;     - If you prefix the name of a Perl variable with an '*', you can &lt;br /&gt;       refer to ALL the Perl objects (scalars, arrays, filehandles, &lt;br /&gt;       subroutines) which have that name&lt;br /&gt;&lt;br /&gt;     - Called a type glob (since the * represents a $ or @ or %)&lt;br /&gt;&lt;br /&gt;     - When a type glob is assigned to another type glob, object &lt;br /&gt;       aliasing is set up.&lt;br /&gt;&lt;br /&gt;     - It is recommended that type globs be used as lvalues only inside &lt;br /&gt;       local().  Otherwise, you may clobber an existing variable!&lt;br /&gt;&lt;br /&gt;     - Ex:&lt;br /&gt;&lt;br /&gt;         @x = (5, 6, 7);&lt;br /&gt;         &amp;sub1 (*x); &lt;br /&gt;                                   &lt;br /&gt;         sub sub1&lt;br /&gt;         {&lt;br /&gt;           local (*array) = @_;&lt;br /&gt;&lt;br /&gt;           # Now any references to @array in the subroutine&lt;br /&gt;           #   are really references to the global array @x.&lt;br /&gt;           # Be careful!  All objects with name x have been&lt;br /&gt;           #   aliased.  References to $array inside the subroutine&lt;br /&gt;           #   will reference a global $x; same with %array&lt;br /&gt;           #   and %x.&lt;br /&gt;           # But now any array operation (for example, push/pop)&lt;br /&gt;           #   can be done on @array and the changes made to the&lt;br /&gt;           #   global @x.&lt;br /&gt;     &lt;br /&gt;         }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-4300464194720184514?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/4300464194720184514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=4300464194720184514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/4300464194720184514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/4300464194720184514'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/12/type-globbing-in-perl.html' title='Type Globbing in Perl'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-7476538153233128217</id><published>2009-12-09T03:13:00.000-08:00</published><updated>2010-06-07T19:43:12.669-07:00</updated><title type='text'>History Search Auto Completion in Linux Machines</title><content type='html'>Using page up and page down key to search the bash history. &lt;br /&gt;&lt;br /&gt;Except on OpenSuSE I couldn't see page up and page down keys functioning to get the commands from the history. &lt;br /&gt;&lt;br /&gt;For Example: If you type less and hit page up, it will display the similar commands from the bash history on openSuSE.&lt;br /&gt;&lt;br /&gt;To set up this on other linux boxes&lt;br /&gt;&lt;br /&gt;edit /etc/inputrc file and add(uncomment) the following lines&lt;br /&gt;&lt;br /&gt;# alternate mappings for "page up" and "page down" to search the history&lt;br /&gt;"\e[5~": history-search-backward&lt;br /&gt;"\e[6~": history-search-forward&lt;br /&gt;&lt;br /&gt;To get this working on CYGWIN:&lt;br /&gt;&lt;br /&gt;echo $HOME&lt;br /&gt;&lt;br /&gt;export INPUTRC=$HOME/.inputrc&lt;br /&gt;&lt;br /&gt;Edit the .inputrc file and add the lines&lt;br /&gt;&lt;br /&gt;# alternate mappings for "page up" and "page down" to search the history&lt;br /&gt;"\e[5~": history-search-backward&lt;br /&gt;"\e[6~": history-search-forward&lt;br /&gt;&lt;br /&gt;Should work after you close and reopen the cygwin window :)&lt;br /&gt;&lt;br /&gt;If there is no .inputrc file you can download one from &lt;br /&gt;&lt;br /&gt;&lt;a href=http://www.wikiupload.com/krgFr1h0&gt;&lt;br /&gt;&lt;img src=http://www.wikiupload.com/images/share_download_button.png width=127 height=145 border=0/&gt;&lt;br /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br /&gt;&lt;div style=font-size:9px;font-family:Arial, Helvetica, sans-serif;width:127px;font-color:#44a854;&gt;&lt;a href=http://www.wikiupload.com/&gt; WikiUpload Free File Hosting&lt;/a&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-7476538153233128217?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/7476538153233128217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=7476538153233128217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/7476538153233128217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/7476538153233128217'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/12/history-search-auto-completion-in-linux.html' title='History Search Auto Completion in Linux Machines'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-3978096643274038689</id><published>2009-12-05T01:19:00.000-08:00</published><updated>2010-03-25T07:19:07.042-07:00</updated><title type='text'>Playing with Linux Commands - Part 1</title><content type='html'>1. Command to find the size of each directory under / partition&lt;br /&gt;&lt;br /&gt;du -hx --max-depth 1 /.&lt;br /&gt;&lt;br /&gt;2. Find directory of a particular pattern and getting the size of it&lt;br /&gt;&lt;br /&gt;find /var/logs -name 'messa*' -type d -print 2&gt;/dev/null | xargs du -sh | sort -n&lt;br /&gt;&lt;br /&gt;3. Find files based on mtime&lt;br /&gt;&lt;br /&gt;find /var/log/messages -type f -mtime +1 -print&lt;br /&gt;&lt;br /&gt;This will display all the files that are older than a day.&lt;br /&gt;&lt;br /&gt;If you need to remove those files which are older than a day the use&lt;br /&gt;&lt;br /&gt;find /var/log/messages -type f -mtime +1 -print0 | xargs -0 rm&lt;br /&gt;&lt;br /&gt;*0 - numeric zero&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-3978096643274038689?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/3978096643274038689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=3978096643274038689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3978096643274038689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/3978096643274038689'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/12/playing-with-linux-commands.html' title='Playing with Linux Commands - Part 1'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-695273331272078252</id><published>2009-12-01T01:27:00.000-08:00</published><updated>2009-12-04T02:34:28.312-08:00</updated><title type='text'>Installing KDE on Ubuntu, the Command Line Way</title><content type='html'>Ubuntu Command-Line install from alternative CD&lt;br /&gt;&lt;br /&gt;1)  apt-get install xorg&lt;br /&gt;&lt;br /&gt;2)  apt-get install xserver-xorg&lt;br /&gt;&lt;br /&gt;3)  apt-get install (in the following order:&lt;br /&gt;        aRts&lt;br /&gt;        kdelibs&lt;br /&gt;        kdebase&lt;br /&gt;&lt;br /&gt;4) apt-get install kdm&lt;br /&gt;&lt;br /&gt;5)  apt-get install optional packages as needed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-695273331272078252?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/695273331272078252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=695273331272078252' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/695273331272078252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/695273331272078252'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/12/installing-kde-on-ubuntu-command-line.html' title='Installing KDE on Ubuntu, the Command Line Way'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-610633223790726534</id><published>2009-11-22T22:32:00.000-08:00</published><updated>2009-11-22T22:33:46.839-08:00</updated><title type='text'>Save an Online Video with your Browser (no extensions needed)</title><content type='html'>&lt;p&gt; Sometimes when you're watching online videos on youtube or other sites, you want to save some of them for later offline playback. You've probably heard of Firefox extensions like DownloadHeloper that can do this, but sometimes you may only have a bare version of Firefox, or perhaps a different browser, one that doesn't have a plugin for doing this. Using the tip below, you can save videos no matter what browser you're using. &lt;/p&gt;  &lt;p&gt; First, find the browser process id: &lt;/p&gt; &lt;pre&gt;$ ps xfa | grep firefox  # or grep any other browsers' name&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; Say, we get 12279. Note that you may get more than one result from the above command: you need the process id of the binary executable. The &lt;tt&gt;firefox&lt;/tt&gt; command, for instance, is normally a script which starts the real binary. &lt;/p&gt; Then, list its opened files, by: &lt;pre&gt;$ ls -lU /proc/12279/fd&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; This will show you the files opened by the process, there may be a lot of them. The file name is the file descriptor number, it is a symbolic link that points to the real file that is opened on that file descriptor. The output will look something like: &lt;/p&gt; &lt;pre&gt;#                       NAME   REAL FILE&lt;br /&gt;lrwx------ 1 grp usr ... 59 -&gt; socket:[3372642]&lt;br /&gt;lrwx------ 1 grp usr ... 62 -&gt; /home/gektop/.mozilla/firefox/u824gy5z.default/signons.sqlite&lt;br /&gt;lrwx------ 1 grp usr ... 70 -&gt; /tmp/moz_media_cache (deleted)&lt;br /&gt;lrwx------ 1 grp usr ... 73 -&gt; /home/gektop/.mozilla/firefox/u824gy5z.default/places.sqlite-journal&lt;br /&gt;lrwx------ 1 grp usr ... 74 -&gt; /tmp/FlashZzxRDM&lt;br /&gt;lrwx------ 1 grp usr ... 75 -&gt; /var/tmp/etilqs_5I5bzLh21aIoh4a (deleted)&lt;br /&gt;&lt;/pre&gt; &lt;p&gt; Now look for names matching the pattern "/tmp/Flash??????". In the above example, we see /tmp/FlashZzxRDM. This is really a .flv file, you can open it with mplayer or any other video player and see that it is a video. If you see more than one file you may need to try playing them to see which one you're looking for. &lt;/p&gt; &lt;p&gt; The last step is to simply copy the file to your home directory, renaming it in the process (e.g. "jackson.flv"). Wait till after the browser has played the entire video, otherwise you may get an incomplete file. &lt;/p&gt;  __________________________&lt;br /&gt;&lt;p&gt;Cheng Renquan, Shenzhen, China&lt;/p&gt;&lt;p&gt;Source: linuxjournal.com&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-610633223790726534?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/610633223790726534/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=610633223790726534' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/610633223790726534'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/610633223790726534'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/11/save-online-video-with-your-browser-no.html' title='Save an Online Video with your Browser (no extensions needed)'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-4338890690233932339</id><published>2009-11-20T11:25:00.001-08:00</published><updated>2009-11-22T22:35:11.940-08:00</updated><title type='text'>UBUNTU FIX: HP Altec Lansing Sounds</title><content type='html'>&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;div class="smallfont"&gt;    &lt;/div&gt;    &lt;hr style="color: rgb(255, 255, 255); background-color: rgb(255, 255, 255);" size="1"&gt;    &lt;!-- / icon and title --&gt;           &lt;!-- message --&gt;In the terminal type:&lt;br /&gt;&lt;div class="vbclean_msgtext" id="post_message_6421164"&gt;&lt;br /&gt;gksudo gedit /etc/modprobe.d/alsa-base&lt;br /&gt;&lt;br /&gt;then at the the bottom paste the following:&lt;br /&gt;&lt;br /&gt;options snd-pcsp index=-2&lt;br /&gt;options snd-hda-intel enable_msi=1&lt;br /&gt;&lt;br /&gt;Then reboot.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-4338890690233932339?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/4338890690233932339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=4338890690233932339' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/4338890690233932339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/4338890690233932339'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/11/ubuntu.html' title='UBUNTU FIX: HP Altec Lansing Sounds'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-1404948162984691759</id><published>2009-08-13T19:21:00.001-07:00</published><updated>2009-08-13T19:21:52.226-07:00</updated><title type='text'>Windows Tip</title><content type='html'>&lt;h4&gt;To convert a volume to NTFS from the command prompt&lt;/h4&gt;         &lt;ol&gt;&lt;li&gt;             &lt;p&gt;Open &lt;strong&gt;Command Prompt&lt;/strong&gt;. Click &lt;strong&gt;Start&lt;/strong&gt;, point to &lt;strong&gt;All Programs&lt;/strong&gt;, point to &lt;strong&gt;Accessories&lt;/strong&gt;, and then click &lt;strong&gt;Command Prompt&lt;/strong&gt;. &lt;/p&gt;           &lt;/li&gt;&lt;li&gt;             &lt;p&gt;In the command prompt window, type: &lt;strong&gt;convert&lt;/strong&gt; drive_letter: &lt;strong&gt;/fs:ntfs&lt;/strong&gt;&lt;br /&gt;&lt;/p&gt;           &lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-1404948162984691759?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/1404948162984691759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=1404948162984691759' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1404948162984691759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1404948162984691759'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/08/windows-tip.html' title='Windows Tip'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-6267306102731528532</id><published>2009-08-11T04:52:00.001-07:00</published><updated>2009-08-27T20:04:07.925-07:00</updated><title type='text'>Simple Subroutine(Code) Reference in Perl</title><content type='html'>#!/usr/bin/perl&lt;br /&gt;&lt;br /&gt;use warnings;&lt;br /&gt;use strict;&lt;br /&gt;&lt;br /&gt;sub david{&lt;br /&gt;   my $name_received = shift;&lt;br /&gt;   print $name_received."\n";&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;my @test_array = ("david santhosh", "david");&lt;br /&gt;&lt;br /&gt;david("santhosh");&lt;br /&gt;my $sub_ref = \&amp;david; # if I use () at the end of the subroutine, it will throw me a warning.. because it just attempts&lt;br /&gt;                       # to call the subroutine instead of taking the reference.&lt;br /&gt;&lt;br /&gt;&amp;amp;$sub_ref("santhsoh");&lt;br /&gt;&lt;br /&gt;my %sub_test = (&lt;br /&gt;               test_work =&gt; sub{&lt;br /&gt;                                   my $num = shift;&lt;br /&gt;                                   $num = $num+1;&lt;br /&gt;                                   return $num;&lt;br /&gt;               } );&lt;br /&gt;&lt;br /&gt;my $test_return = &amp;amp;{$sub_test{test_work}}(6);&lt;br /&gt;&lt;br /&gt;print $test_return."\n";&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;my $test_anonymous = sub {&lt;br /&gt;                       my $my_name = shift;&lt;br /&gt;                       print $my_name."santhosh"."\n";&lt;br /&gt;                     &lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;&amp;amp;$test_anonymous("david");&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-6267306102731528532?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/6267306102731528532/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=6267306102731528532' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6267306102731528532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6267306102731528532'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/08/simple-subroutine-reference-in-perl.html' title='Simple Subroutine(Code) Reference in Perl'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-2991514042756459389</id><published>2009-08-04T20:39:00.000-07:00</published><updated>2010-05-18T21:34:18.119-07:00</updated><title type='text'>Using Screen</title><content type='html'>&lt;span style="color: rgb(153, 0, 0);"&gt;Using Screen: A Quick Reference&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;On your console type &lt;span style="font-weight: bold; color: rgb(255, 102, 102);"&gt;screen&lt;/span&gt; and hit enter(twice).&lt;br /&gt;&lt;br /&gt;1. ctrl + a + c - create a new session in screen.&lt;br /&gt;2. ctrl + a + p - previous screen.&lt;br /&gt;3. ctrl + a + n - next screen.&lt;br /&gt;4. ctrl + a + d - detach the screen.&lt;br /&gt;5. ctrl + a + k - kill window.&lt;br /&gt;6. ctrl + a + l - refresh the current window.&lt;br /&gt;7. ctrl + a + w - list all windows.&lt;br /&gt;8. ctrl + a + \ - kill all windows and terminate.&lt;br /&gt;9. ctrl + a + { - enter copy mode. will help to scroll through the history of previous operations.&lt;br /&gt;10. ctrl + a + A - name a screen session.&lt;br /&gt;11. ctrl + a + " - list all the screen session and select.&lt;br /&gt;12. ctrl + a + ' - provides an option to give the session id to jump.&lt;br /&gt;To re attach to a detached screen, type&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;screen -ls&lt;/span&gt;&lt;br /&gt;which will display the list of screen detached, select the screen you want to attach and type&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;screen -r &lt;/span&gt;&lt;session&gt;&lt;attach&gt;&lt;br /&gt;&lt;br /&gt;if you get an error saying that the screen is already attached, then detach and reattach.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;screen -d (-r)&lt;/span&gt; &lt;detach&gt;&lt;br /&gt;&lt;br /&gt;&lt;/detach&gt;&lt;/attach&gt;&lt;/session&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Here, I initially thought that &lt;span style="color: rgb(255, 0, 0);"&gt; ctrl + s &lt;/span&gt;is a screen bug, but that isn't. What happens is when you press ctrl + s it calls the software flow control method &lt;span style="font-weight:bold;"&gt;XOFF&lt;/span&gt; which stops the character flow to the terminal, which when you feel that the terminal frozen. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;To get rid of this you can type &lt;span style="color: rgb(255, 0, 0);"&gt;  ctrl + q &lt;/span&gt; which calls &lt;span style="font-weight:bold;"&gt;XON&lt;/span&gt; and starts the terminal again.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-2991514042756459389?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/2991514042756459389/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=2991514042756459389' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/2991514042756459389'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/2991514042756459389'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/08/using-screen.html' title='Using Screen'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-6602875002309838016</id><published>2009-05-01T22:24:00.000-07:00</published><updated>2009-05-01T22:29:41.318-07:00</updated><title type='text'>Traning Spamassassin</title><content type='html'>You can train spam assassin for both spam and ham(Not Spam) mails, Here are the commands&lt;br /&gt;&lt;br /&gt;Spam&lt;br /&gt;1. sa-learn --spam --mbox $path_to_spam_dir --debug&lt;br /&gt;Ham(Not Spam)&lt;br /&gt;2. sa-learn --spam --mbox $path_to_spam_dir --debug&lt;br /&gt;&lt;br /&gt;--mbox - means that the file is in mbox format, you can also use -f for file or --folders options.&lt;br /&gt;sa-learn --help will give more command line options.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-6602875002309838016?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/6602875002309838016/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=6602875002309838016' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6602875002309838016'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/6602875002309838016'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/05/traning-spamassassin.html' title='Traning Spamassassin'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-341671527741792982</id><published>2009-04-07T04:28:00.001-07:00</published><updated>2009-04-07T04:29:39.590-07:00</updated><title type='text'>Xen on CentOS</title><content type='html'>A good xen virtualization guide bu centos comminity.&lt;br /&gt;&lt;br /&gt;http://www.centos.org/docs/5/html/Virtualization-en-US/task-virt-xend.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-341671527741792982?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/341671527741792982/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=341671527741792982' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/341671527741792982'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/341671527741792982'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/04/good-xen-virtualization-guide-bu-centos.html' title='Xen on CentOS'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-8965133220695415097</id><published>2009-03-15T10:52:00.000-07:00</published><updated>2009-04-07T04:25:05.244-07:00</updated><title type='text'>Mounting Logical Volumes</title><content type='html'>Mounting a logical volume  in linux system&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);font-family:arial;font-size:130%;"  &gt;&lt;pre class="screen"&gt;&lt;span class="command"&gt;#vgchange -a y my_volume_group&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;Example:&lt;br /&gt;&lt;br /&gt;#vgchange -a y /dev/system&lt;br /&gt;&lt;br /&gt;#lvs (Will display information about logical volumes)&lt;br /&gt;&lt;br /&gt;#ls -l /dev/system/ (will display all the partitions in the volume group system)&lt;br /&gt;&lt;br /&gt;#mount /dev/system/data /mnt (will mount the data partition of the volume group system to /mnt)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;pre class="screen"&gt;&lt;b class="command"&gt;&lt;br /&gt;&lt;/b&gt;&lt;/pre&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-8965133220695415097?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/8965133220695415097/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=8965133220695415097' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8965133220695415097'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8965133220695415097'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/03/mounting-logical-volumes.html' title='Mounting Logical Volumes'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-118829966800663949</id><published>2009-03-10T12:09:00.000-07:00</published><updated>2009-03-15T10:51:55.298-07:00</updated><title type='text'>Mounting Disk Images on openSuSE 11.1</title><content type='html'>Opensuse 11.1 distribution removed lomount from their latest distribution, So to mount a disk image(Xen Image), you can use the following commands&lt;br /&gt;&lt;br /&gt;Mounting&lt;br /&gt;#losetup /dev/loop3 /path/to/image/file&lt;br /&gt;&lt;br /&gt;#kpartx -a /dev/loop3 (you can see the device in /dev/mapper/loop3pl)&lt;br /&gt;&lt;br /&gt;# mount /dev/mapper/loop3pl /mnt&lt;br /&gt;&lt;br /&gt;Unmount and Detaching&lt;br /&gt;&lt;br /&gt;# umount /mnt&lt;br /&gt;&lt;br /&gt;# kpartx -d /dev/loop3&lt;br /&gt;&lt;br /&gt;# losetup -d /dev/loop3&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-118829966800663949?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/118829966800663949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=118829966800663949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/118829966800663949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/118829966800663949'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/03/mounting-disk-images-on-opensuse-111.html' title='Mounting Disk Images on openSuSE 11.1'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-1151801245323082743</id><published>2009-03-10T11:48:00.000-07:00</published><updated>2009-03-10T12:22:37.327-07:00</updated><title type='text'>CPAN ERROR: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Line-Count header</title><content type='html'>&lt;span style="font-weight: bold;"&gt;CPAN ERROR: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Line-Count header&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;cpan&gt; install LWP::UserAgent&lt;br /&gt;CPAN: Storable loaded ok&lt;br /&gt;Going to read /root/.cpan/Metadata&lt;br /&gt; Database was generated on Sun, 27 Jul 2008 16:02:45 GMT&lt;br /&gt;Going to read /root/.cpan/sources/authors/01mailrc.txt.gz&lt;br /&gt;Going to read /root/.cpan/sources/modules/02packages.details.txt.gz&lt;br /&gt;Warning: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Line-Count header.&lt;br /&gt;Please check the validity of the index file by comparing it to more&lt;br /&gt;than one CPAN mirror. I'll continue but problems seem likely to&lt;br /&gt;happen.&lt;br /&gt;Warning: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Last-Updated header.&lt;br /&gt;Please check the validity of the index file by comparing it to more&lt;br /&gt;than one CPAN mirror. I'll continue but problems seem likely to&lt;br /&gt;happen.&lt;br /&gt;Going to read /root/.cpan/sources/modules/03modlist.data.gz&lt;br /&gt;Can't locate object method "data" via package "CPAN::Modulelist" (perhaps you forgot to load "CPAN::Modulelist"?) at (eval 33) line 1, &lt;fh&gt; line 9.&lt;br /&gt;at /usr/lib/perl5/5.8.8/CPAN.pm line 3405&lt;br /&gt;       CPAN::Index::rd_modlist('CPAN::Index', '/root/.cpan/sources/modules/03modlist.data.gz') called at /usr/lib/perl5/5.8.8/CPAN.pm line 3128&lt;br /&gt;       CPAN::Index::reload('CPAN::Index') called at /usr/lib/perl5/5.8.8/CPAN.pm line 675&lt;br /&gt;       CPAN::exists('CPAN=HASH(0x8758110)', 'CPAN::Module', 'LWP::UserAgent') called at /usr/lib/perl5/5.8.8/CPAN.pm line 1841&lt;br /&gt;       CPAN::Shell::expandany('CPAN::Shell', 'LWP::UserAgent') called at /usr/lib/perl5/5.8.8/CPAN.pm line 2077&lt;br /&gt;       CPAN::Shell::rematein('CPAN::Shell', 'install', 'LWP::UserAgent') called at /usr/lib/perl5/5.8.8/CPAN.pm line 2164&lt;br /&gt;       CPAN::Shell::install('CPAN::Shell', 'LWP::UserAgent') called at /usr/lib/perl5/5.8.8/CPAN.pm line 201&lt;br /&gt;       eval {...} called at /usr/lib/perl5/5.8.8/CPAN.pm line 201&lt;br /&gt;       CPAN::shell() called at /usr/bin/cpan line 193&lt;br /&gt;-------------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;If u have a similar error trigger just reload the cpan index&lt;br /&gt;&lt;br /&gt;command:&lt;br /&gt;&lt;br /&gt;cpan&gt; reload index&lt;br /&gt;&lt;br /&gt;and also rebuild the Cpan&lt;br /&gt;&lt;br /&gt;cpan&gt; install Bundle::CPAN&lt;br /&gt;&lt;br /&gt;cpan&gt;  reload cpan.&lt;br /&gt;&lt;br /&gt;For any FTP related issued use the command.&lt;br /&gt;&lt;br /&gt;#export FTP_PASSIVE=1&lt;/fh&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-1151801245323082743?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/1151801245323082743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=1151801245323082743' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1151801245323082743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/1151801245323082743'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2009/03/cpan-error-your-root.html' title='CPAN ERROR: Your /root/.cpan/sources/modules/02packages.details.txt.gz does not contain a Line-Count header'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8431628057474413200.post-8745891436933727570</id><published>2008-11-17T07:13:00.000-08:00</published><updated>2011-10-17T03:16:12.035-07:00</updated><title type='text'>Linux - Beginning with basics</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt; &lt;br /&gt;In this blog I will share the information about the things I learn, test and try often. All the posts are always open for comments, if you feel something can be better in your way, please post your comments. &lt;br /&gt;&lt;br /&gt;About Me:&lt;br /&gt;&lt;br /&gt;I am Davidsanthosh Lourthusamy. I am working on Perl Programming from Sep'09,&amp;nbsp; I like to play around stuffs on a open platform, Linux especially. Most of the stuffs I post here are tested. Play around.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8431628057474413200-8745891436933727570?l=blackboard.myhomepc.in' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blackboard.myhomepc.in/feeds/8745891436933727570/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8431628057474413200&amp;postID=8745891436933727570' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8745891436933727570'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8431628057474413200/posts/default/8745891436933727570'/><link rel='alternate' type='text/html' href='http://blackboard.myhomepc.in/2008/11/here-i-planned-to-share-some.html' title='Linux - Beginning with basics'/><author><name>David Santhosh</name><uri>http://www.blogger.com/profile/09404754201026173618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
