<?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-6820481775641762988</id><updated>2012-01-15T07:49:21.405+05:30</updated><category term='linux'/><category term='ruby'/><category term='commandline'/><category term='ant'/><category term='emacs'/><category term='tools'/><category term='javascript'/><category term='sysadmin'/><category term='java'/><category term='web'/><category term='webservices'/><category term='cricket'/><category term='dba'/><category term='shell-scripts'/><category term='india'/><category term='http'/><category term='bestpractise'/><category term='bash'/><category term='links'/><category term='sed'/><category term='oracle'/><category term='browsers'/><category term='regex'/><category term='firefox'/><category term='jquery'/><category term='xmllint'/><category term='find'/><category term='sql'/><category term='unix'/><category term='rails'/><category term='search'/><category term='windows'/><category term='performance'/><category term='network'/><category term='eclipse'/><category term='vim'/><category term='code'/><category term='svn'/><category term='database'/><title type='text'>Tech Trek</title><subtitle type='html'>Technical tid-bits and more ! 
Leave a comment if you found something useful.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>73</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-8721921657201156506</id><published>2012-01-15T07:49:00.002+05:30</published><updated>2012-01-15T07:49:21.411+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle Cascade Delete</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;http://www.sandeepsinghal.com/2012/01/14/oracle-cascase-delete/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8721921657201156506?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8721921657201156506/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8721921657201156506' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8721921657201156506'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8721921657201156506'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2012/01/oracle-cascade-delete.html' title='Oracle Cascade Delete'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-664267236799284286</id><published>2011-10-09T06:03:00.000+05:30</published><updated>2011-10-09T06:03:02.165+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle SID vs Service Name in JDBC URL</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;b&gt;With SID&lt;/b&gt;&lt;br /&gt;&lt;div&gt;jdbc:oracle:thin@myhost:port:sid&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;With Service Name&lt;/b&gt;&lt;/div&gt;jdbc:oracle:thin@myhost:port/service&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-664267236799284286?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/664267236799284286/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=664267236799284286' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/664267236799284286'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/664267236799284286'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/10/oracle-sid-vs-service-name-in-jdbc-url.html' title='Oracle SID vs Service Name in JDBC URL'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-4720043919074561099</id><published>2011-10-04T17:18:00.000+05:30</published><updated>2011-10-04T17:18:17.125+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Vim - Join Lines with a Comma (or any other character)</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;Step 1 : Put the desired character at the end of each line. I will use a "," as an example&lt;br /&gt;&lt;br /&gt;:%s/$/,/g&lt;br /&gt;&lt;br /&gt;Step 2 : Join the lines together&lt;br /&gt;&lt;br /&gt;%j!&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/6820481775641762988-4720043919074561099?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4720043919074561099/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4720043919074561099' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4720043919074561099'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4720043919074561099'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/10/vim-join-lines-with-comma-or-any-other.html' title='Vim - Join Lines with a Comma (or any other character)'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-5161733495345617793</id><published>2011-10-03T08:15:00.002+05:30</published><updated>2011-10-03T08:15:30.034+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bestpractise'/><title type='text'>Post on Logging.</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;My post on logging in production&lt;br /&gt;&lt;br /&gt;http://sandeepsinghal.wordpress.com/2011/09/18/better-you-log-in-development-less-you-will-bleed-in-production/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5161733495345617793?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5161733495345617793/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5161733495345617793' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5161733495345617793'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5161733495345617793'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/10/post-on-logging.html' title='Post on Logging.'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-4268812333213011526</id><published>2011-10-03T08:13:00.001+05:30</published><updated>2011-10-03T08:14:49.199+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Google Code Page for Unix Utils</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&amp;nbsp;Adding some of my utility shell scripts to a common google page.&lt;br /&gt;&lt;br /&gt;http://code.google.com/p/nixtils/&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-4268812333213011526?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4268812333213011526/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4268812333213011526' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4268812333213011526'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4268812333213011526'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/10/google-code-page-for-unix-utils.html' title='Google Code Page for Unix Utils'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-5365643494966442013</id><published>2011-07-25T19:57:00.000+05:30</published><updated>2011-07-25T19:57:15.760+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Linux - See which process is using which port</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;netstat -anop&lt;br /&gt;&lt;br /&gt;Then use ps and grep to find the process using this port&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5365643494966442013?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5365643494966442013/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5365643494966442013' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5365643494966442013'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5365643494966442013'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/07/linux-see-which-process-is-using-which.html' title='Linux - See which process is using which port'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2477785767688778354</id><published>2011-07-25T19:49:00.000+05:30</published><updated>2011-07-25T19:49:17.746+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>Windows - See what processes are using which ports</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;netstat -ano&lt;br /&gt;&lt;br /&gt;You can then use the task manager to see the process id of the owning process.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2477785767688778354?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2477785767688778354/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2477785767688778354' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2477785767688778354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2477785767688778354'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2011/07/windows-see-what-processes-are-using.html' title='Windows - See what processes are using which ports'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-6129838468530485059</id><published>2010-02-23T23:06:00.001+05:30</published><updated>2010-02-23T23:06:32.403+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='xmllint'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Installing xmllint on cygwin</title><content type='html'>Select the following pacakges&lt;br /&gt;&lt;ul&gt;&lt;li&gt;libxml&lt;/li&gt;&lt;li&gt;libxslt&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-6129838468530485059?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/6129838468530485059/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=6129838468530485059' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6129838468530485059'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6129838468530485059'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2010/02/installing-xmllint-on-cygwin.html' title='Installing xmllint on cygwin'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-5954041493708317681</id><published>2009-12-27T20:33:00.002+05:30</published><updated>2009-12-27T20:34:03.181+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><title type='text'>symbolic links in windows</title><content type='html'>junction - sysinternal tool for winxp and above&lt;br /&gt;&lt;br /&gt;mlink - with vista and above&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5954041493708317681?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5954041493708317681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5954041493708317681' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5954041493708317681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5954041493708317681'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/12/symbolic-links-in-windows.html' title='symbolic links in windows'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8611423809282501046</id><published>2009-11-07T09:23:00.004+05:30</published><updated>2009-11-07T09:27:27.179+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Find lines of code in your repository</title><content type='html'>&lt;pre name="code" class="shell"&gt;&lt;br /&gt;        for ext in "*.java" "*.xml" "*.css" "*.jsp" "*.js" "*.sql"&lt;br /&gt;        do&lt;br /&gt;                echo -n "$ext,$location,"&lt;br /&gt;                find ./$location -iname "$ext" -exec wc -l '{}' \;|gawk '{total+=$1} END{print total}'&lt;br /&gt;        done&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8611423809282501046?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8611423809282501046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8611423809282501046' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8611423809282501046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8611423809282501046'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/11/find-lines-of-code-in-your-repository.html' title='Find lines of code in your repository'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-7846299655431579665</id><published>2009-10-22T17:54:00.001+05:30</published><updated>2009-10-22T18:04:31.420+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='ant'/><title type='text'>Passing Debug Parameters to JVM using Ant</title><content type='html'>&lt;pre name="code" class="xml"&gt;&lt;br /&gt; &lt;target name="rundebug" depends="base.dist"&gt;&lt;br /&gt;  &lt;java fork="true" classname="com.fiberlink.example.Example" classpathref="libraries" maxmemory="1000m"&gt;&lt;br /&gt;   &lt;classpath path="${target.classes.dir}"/&gt;&lt;br /&gt;   &lt;arg value="${action}"/&gt;&lt;br /&gt;   &lt;jvmarg value="-Xdebug"/&gt;&lt;br /&gt;        &lt;jvmarg value="-Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=y"/&gt;&lt;br /&gt;  &lt;/java&gt;&lt;br /&gt; &lt;/target&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7846299655431579665?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7846299655431579665/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7846299655431579665' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7846299655431579665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7846299655431579665'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/10/passing-debug-parameters-to-jvm-using.html' title='Passing Debug Parameters to JVM using Ant'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3396844762550438710</id><published>2009-07-02T19:20:00.000+05:30</published><updated>2009-07-02T19:21:08.999+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Getting tablespace Size</title><content type='html'>&lt;pre&gt;&lt;br /&gt;SELECT tablespace_name,&lt;br /&gt;       SUM (bytes) / 1024 / 1024 current_size,&lt;br /&gt;       autoextensible,&lt;br /&gt;       SUM (maxbytes) / 1024 / 1024 max_size&lt;br /&gt;FROM dba_data_files&lt;br /&gt;WHERE tablespace_name like '%'&lt;br /&gt;GROUP BY tablespace_name, autoextensible&lt;br /&gt;ORDER BY 1&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3396844762550438710?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3396844762550438710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3396844762550438710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3396844762550438710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3396844762550438710'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/07/getting-tablespace-size.html' title='Getting tablespace Size'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2696056113072842565</id><published>2009-05-10T14:53:00.002+05:30</published><updated>2009-05-10T14:55:08.996+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>bash : search and replace from previous command</title><content type='html'>&lt;p&gt;tar -cvf sandeep.tar sandeep/&lt;/p&gt;&lt;p&gt;!!:gs/sandeep/singhal will mean&lt;/p&gt;&lt;p&gt;tar -cvf singhal.tar singhal/&lt;/p&gt;&lt;p&gt;:gs is for global search and replace&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2696056113072842565?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2696056113072842565/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2696056113072842565' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2696056113072842565'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2696056113072842565'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/05/bash-search-and-replace-from-previous.html' title='bash : search and replace from previous command'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8336419653999350115</id><published>2009-05-10T14:19:00.004+05:30</published><updated>2009-05-10T14:24:18.966+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>bash - last argument of the previous command (nth argument)</title><content type='html'>&lt;ul&gt;&lt;li&gt;Get the last argument of the previous command : !!$&lt;/li&gt;&lt;li&gt;Get the first argumnet of the previous command : !!^&lt;/li&gt;&lt;li&gt;Get the 1st argument of the previous command : !!1&lt;/li&gt;&lt;li&gt;Get the nth argument of the previous command : !!n&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Examples : &lt;/p&gt;&lt;p&gt;$&gt; ls :!!$  (or !$) &lt;/p&gt;&lt;p&gt;$&gt; ls :!!^&lt;/p&gt;&lt;p&gt;$&gt; ls :!!2&lt;/p&gt;&lt;p&gt;$&gt; ls :!!n&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8336419653999350115?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8336419653999350115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8336419653999350115' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8336419653999350115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8336419653999350115'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/05/bash-last-argument-of-previous-command.html' title='bash - last argument of the previous command (nth argument)'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-5379309017436274221</id><published>2009-05-02T12:12:00.003+05:30</published><updated>2009-05-02T12:18:09.250+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='performance'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>Trigger GC in eclipse.</title><content type='html'>This is a handy  for eclipse which lets you to trigger gc in the eclipse instead of waiting for the jvm to schedule the GC .&lt;br /&gt;&lt;br /&gt;Go to Window-&gt;Preferences-&gt;General, mark Show Heap status check box.&lt;br /&gt;The current Heap usage  with icon for "Run Garbage Collector" will appear at the bottom right.&lt;br /&gt;&lt;br /&gt;It helps a lot in eclipse performance.&lt;br /&gt;&lt;br /&gt;I find it pretty handy especially because I do not shutdown eclipse often.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5379309017436274221?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5379309017436274221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5379309017436274221' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5379309017436274221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5379309017436274221'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/05/trigger-gc-in-eclipse.html' title='Trigger GC in eclipse.'/><author><name>Nalini Kannan</name><uri>http://www.blogger.com/profile/03683040835597762941</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='22' height='32' src='http://4.bp.blogspot.com/_AVfQw2KK6Do/SfqSvtzBlcI/AAAAAAAAAVE/lJILz0DNoH4/S220/tall%26Short.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-4331445153290478914</id><published>2009-05-01T09:51:00.003+05:30</published><updated>2009-05-01T09:54:33.815+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='browsers'/><title type='text'>Two things I love about opera</title><content type='html'>&lt;p&gt;1. You can type windows specific path on the browser bar and it will covert it to "forward slashes" when you are browsing directory like strucure on a browser&lt;/p&gt;&lt;p&gt;2. The quick search box : The cursor remains at the same place if you go to a different window by "ALT-TAB". This in firefox changes to select the entire text already typed in the search box. Hence you cannot start typing straight away, since that will erase the already entered text. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-4331445153290478914?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4331445153290478914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4331445153290478914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4331445153290478914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4331445153290478914'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/05/two-things-i-love-about-opera.html' title='Two things I love about opera'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1201713850758820279</id><published>2009-04-26T21:01:00.000+05:30</published><updated>2009-04-26T21:02:17.865+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Common sqlplus commands</title><content type='html'>ACCEPT - Get input from the user &lt;br /&gt;DEFINE - Declare a variable (short: DEF) &lt;br /&gt;DESCRIBE - Lists the attributes of tables and other objects (short: DESC) &lt;br /&gt;EDIT - Places you in an editor so you can edit a SQL command (short: ED) &lt;br /&gt;EXIT or QUIT - Disconnect from the database and terminate SQL*Plus &lt;br /&gt;GET - Retrieves a SQL file and places it into the SQL buffer &lt;br /&gt;HOST - Issue an operating system command (short: !) &lt;br /&gt;LIST - Displays the last command executed/ command in the SQL buffer (short: L) &lt;br /&gt;PROMPT - Display a text string on the screen. Eg prompt Hello World!!! &lt;br /&gt;RUN - List and Run the command stored in the SQL buffer (short: /) &lt;br /&gt;SAVE - Saves command in the SQL buffer to a file. Eg "save x" will create a script file called x.sql &lt;br /&gt;SET - Modify the SQL*Plus environment eg. SET PAGESIZE 23 &lt;br /&gt;SHOW - Show environment settings (short: SHO). Eg SHOW ALL, SHO PAGESIZE etc. &lt;br /&gt;SPOOL - Send output to a file. Eg "spool x" will save STDOUT to a file called x.lst &lt;br /&gt;START - Run a SQL script file (short: @)&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;source :&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;http://www.orafaq.com/wiki/SQL*Plus_FAQ&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1201713850758820279?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1201713850758820279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1201713850758820279' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1201713850758820279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1201713850758820279'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/common-sqlplus-commands.html' title='Common sqlplus commands'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-8155979724482067046</id><published>2009-04-20T13:54:00.001+05:30</published><updated>2009-04-20T13:55:56.006+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle - Default Location for data files</title><content type='html'>&lt;p&gt;&lt;strong&gt;To get the existing location&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;sql &gt; show parameter db_create;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;To set a new location&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;sql&gt; alter system set db_create_file_dest='/home/ssinghal/oradata';&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8155979724482067046?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8155979724482067046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8155979724482067046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8155979724482067046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8155979724482067046'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/oracle-default-location-for-data-files.html' title='Oracle - Default Location for data files'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3840821903780000591</id><published>2009-04-08T13:59:00.001+05:30</published><updated>2009-04-08T14:00:19.064+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Vim - Reduce Backslashing</title><content type='html'>&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;Appending a "\v" reduces the amount of backslashing the search expressions.&lt;br /&gt;&lt;br /&gt;/codes\(\n\|\s\)*where : normal regexp&lt;br /&gt;/\vcodes(\n|\s)*where  : very magic&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;source :&lt;br /&gt;http://vim.wikia.com/wiki/Best_Vim_Tips&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3840821903780000591?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3840821903780000591/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3840821903780000591' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3840821903780000591'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3840821903780000591'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/vim-reduce-backslashing.html' title='Vim - Reduce Backslashing'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2446762504735332809</id><published>2009-04-07T14:04:00.004+05:30</published><updated>2009-04-17T14:32:30.702+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Vim - Open Current File in Explorer or Command Prompt</title><content type='html'>Put the following two lines in your vimrc files under window to get F11 and F12 to work as "command prompt here" and "explorer here" !&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;map  :silent !start cmd.exe /k pushd %:p:h&lt;br /&gt;map  :silent !start explorer.exe %:p:h&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;source for tip1&lt;br /&gt;&lt;p&gt;"http://vim.wikia.com/wiki/Open_the_folder_containing_the_currently_open_file"&lt;/p&gt;&lt;p&gt;source for tip2&lt;/p&gt;&lt;p&gt;A variant of tip 1 using windows trick of adding a registry for folders to open a command prompt &lt;/p&gt;Note : % represents the file open in current buffer&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2446762504735332809?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2446762504735332809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2446762504735332809' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2446762504735332809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2446762504735332809'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/vim-open-current-file-in-explorer-or.html' title='Vim - Open Current File in Explorer or Command Prompt'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3288582985719639906</id><published>2009-04-06T13:57:00.002+05:30</published><updated>2009-04-06T13:57:49.461+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle dba_jobs : Breaking</title><content type='html'>exec dbms_job.broken(690,true);&lt;br /&gt;&lt;br /&gt;where 690 is the job number obtained from &lt;br /&gt;select * from dba_jobs&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3288582985719639906?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3288582985719639906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3288582985719639906' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3288582985719639906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3288582985719639906'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/oracle-dbajobs-breaking.html' title='Oracle dba_jobs : Breaking'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-3974679018741370466</id><published>2009-04-06T13:54:00.004+05:30</published><updated>2009-04-06T13:56:45.131+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle databases - startup and shutdown</title><content type='html'>Shutdown:&lt;br /&gt;&lt;br /&gt;$ export ORACLE_SID=db_sid&lt;br /&gt;$ sqlplus /nolog&lt;br /&gt;sql&gt; connect / as sysdba&lt;br /&gt;sql&gt; shutdown immediate&lt;br /&gt;&lt;br /&gt;Startup :&lt;br /&gt;&lt;br /&gt;$ export ORACLE_SID=db_sid&lt;br /&gt;$ sqlplus /nolog&lt;br /&gt;sql&gt; connect / as sysdba&lt;br /&gt;sql&gt; startup mount&lt;br /&gt;sql&gt; alter database open;&lt;br /&gt;&lt;br /&gt;Note: This needs to be done by logging on the machine where oracle database is installed&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3974679018741370466?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3974679018741370466/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3974679018741370466' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3974679018741370466'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3974679018741370466'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/04/oracle-databases-startup-and-shutdown.html' title='Oracle databases - startup and shutdown'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2713242055717577979</id><published>2009-02-24T18:58:00.000+05:30</published><updated>2009-02-24T18:59:43.068+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>marks in vim - bookmarks</title><content type='html'>- Go to a line where you want a mark and press mx - this will create a bookmark&lt;br /&gt;&lt;br /&gt;( x can be any alphabet from a-z)&lt;br /&gt;&lt;br /&gt;- Now navigate away from that place. If you need to get back to the earlier cursor location press "`x" (back-tick and x)&lt;br /&gt;&lt;br /&gt;- You can set multiple "marks" in a single file and navigate using back-tick and the alphabet used to create a mark&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2713242055717577979?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2713242055717577979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2713242055717577979' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2713242055717577979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2713242055717577979'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/02/marks-in-vim-bookmarks.html' title='marks in vim - bookmarks'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3566657201460863484</id><published>2009-02-16T16:13:00.000+05:30</published><updated>2009-02-16T16:14:00.755+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Cron entry for other users</title><content type='html'>Execute the following as root : &lt;br /&gt;&lt;br /&gt;cat /var/spool/cron/ssinghal&lt;br /&gt;&lt;br /&gt;where ssinghal is the user name&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3566657201460863484?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3566657201460863484/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3566657201460863484' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3566657201460863484'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3566657201460863484'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/02/cron-entry-for-other-users.html' title='Cron entry for other users'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8465464791673598528</id><published>2009-02-06T11:36:00.002+05:30</published><updated>2009-02-06T11:39:19.347+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='sed'/><title type='text'>Sed - Deleting lines matching a pattern</title><content type='html'>sed -i '/.*log$/d' file_names.txt&lt;br /&gt;&lt;br /&gt;Deletes all the lines ending with "log" from the file "file_names.txt"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8465464791673598528?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8465464791673598528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8465464791673598528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8465464791673598528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8465464791673598528'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/02/sed-deleting-lines-matching-pattern.html' title='Sed - Deleting lines matching a pattern'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-4547902322752125399</id><published>2009-01-27T08:29:00.002+05:30</published><updated>2009-02-16T16:23:32.641+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>marks in vim - bookmarks</title><content type='html'>Go to a line where you want a mark and press mx - this will create a bookmark&lt;br /&gt;&lt;br /&gt;( x can be any alphabet from a-z)&lt;br /&gt;&lt;br /&gt;- Now navigate away from that place. If you need to get back to the earlier cursor location press "`x" (back-tick and x)&lt;br /&gt;&lt;br /&gt;- You can set multiple "marks" in a single file and navigate using back-tick and the alphabet used to create a mark&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-4547902322752125399?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4547902322752125399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4547902322752125399' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4547902322752125399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4547902322752125399'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/01/marks-in-vim-bookmars.html' title='marks in vim - bookmarks'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3433413936543003664</id><published>2009-01-26T21:39:00.004+05:30</published><updated>2009-01-26T21:43:13.189+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='sed'/><title type='text'>sed : inplace replacement</title><content type='html'>&lt;p&gt;It is easy to open a file in vim and do a search replace - but if the file runs into huge sizes, a regular editor would not be able to perform search and replace tasks on it efficiently. For these situation, you need a "stream" editor. Here is an example for replacing "foo" with "bar" in a file called snafu.txt&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;code&gt;sed -i -e 's/foo/bar/g' snafu.txt&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Where:&lt;br /&gt;&lt;/p&gt;&lt;p&gt;-i : Is for inplace replacement&lt;/p&gt;&lt;p&gt;-e: sed script to be run on the file&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3433413936543003664?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3433413936543003664/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3433413936543003664' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3433413936543003664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3433413936543003664'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/01/sed-inplace-replacement.html' title='sed : inplace replacement'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3265361695139871487</id><published>2009-01-26T21:21:00.001+05:30</published><updated>2009-01-26T21:36:18.912+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='network'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>samba mount</title><content type='html'>&lt;p&gt;Using samba to mount a windows shared folder&lt;/p&gt;&lt;p&gt;mount -t cifs -o username=Home\\sandeep //192.168.0.1/Shared/ /media/Shared&lt;/p&gt;&lt;p&gt;Where /media/Shared is the target folder where the network folder will be mounted.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3265361695139871487?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3265361695139871487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3265361695139871487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3265361695139871487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3265361695139871487'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/01/samba-mount.html' title='samba mount'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-6971389213045090119</id><published>2009-01-25T18:49:00.001+05:30</published><updated>2009-01-25T18:51:05.554+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Executing a command remotely using ssh</title><content type='html'>&lt;p&gt;Following command will run a shell script on a remote machine&lt;/p&gt;&lt;p&gt;ssh ssinghal@192.168.0.1 /tomcat/jakarta/bin/kill.sh&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-6971389213045090119?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/6971389213045090119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=6971389213045090119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6971389213045090119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6971389213045090119'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2009/01/executing-command-remotely-using-ssh.html' title='Executing a command remotely using ssh'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1494008021137699453</id><published>2008-12-26T12:31:00.002+05:30</published><updated>2008-12-26T12:42:18.237+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Capturing output of terminal on Unix</title><content type='html'>Terminals do not have a great scroll length and even though you can increase the number of lines that can be scrolled up, it is always useful to have the output captured in a file so that you can search on it. Here are few ways&lt;br /&gt;&lt;br /&gt;1. Redirection&lt;br /&gt;&lt;br /&gt;cat foo.txt &gt; bar.txt&lt;br /&gt;&lt;br /&gt;Outout of foo.txt is captured in bar.txt&lt;br /&gt;&lt;br /&gt;2. Redirection with "append"&lt;br /&gt;&lt;br /&gt;ls &gt;&gt; bar.txt&lt;br /&gt;&lt;br /&gt;This will append the output of "ls" to bar.txt ( Instead of overwriting it)&lt;br /&gt;&lt;br /&gt;3. "tee"&lt;br /&gt;Redirect and redirect with append will not display the content on console and hence if you want to see the content and also redirect it to a file , use "tee"&lt;br /&gt;&lt;br /&gt;ls | tee bar.txt&lt;br /&gt;&lt;br /&gt;this will display the contents of ls on terminal and also redirect it to bar.txt&lt;br /&gt;&lt;br /&gt;4. output to multiple files &lt;br /&gt;&lt;br /&gt;ls | tee a.txt b.txt c.txt&lt;br /&gt;&lt;br /&gt;This will output contents of ls to a.txt, b.txt, c.txt&lt;br /&gt;&lt;br /&gt;5. Outout all the terminal interaction to a file&lt;br /&gt;&lt;br /&gt;script -f out.txt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1494008021137699453?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1494008021137699453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1494008021137699453' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1494008021137699453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1494008021137699453'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/12/capturing-output-of-terminal-on-unix.html' title='Capturing output of terminal on Unix'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8633190730303505669</id><published>2008-12-22T08:57:00.003+05:30</published><updated>2008-12-22T09:05:26.572+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>Converting UTF-16 to UTF-8</title><content type='html'>I was running grep on an xml file (big one) and realized that it did not match the pattern I was expecting the the file. I then did a "head" from the file to see a pattern that is present in it. Grepping on that too returned nothing telling me that grep is somehow not working on this file.&lt;br /&gt;"head" was returning some junk characters at the begining of the file - This idicated that the file does not have a normal text encoding and probably that is the reason why grep is not working on it.&lt;br /&gt;Reading the XML header proved that, since it was "UTF-18", grep was not running over it. I had to convert the file to UTF-8 which is more text friendly if the content is only English.&lt;br /&gt;&lt;br /&gt;iconv --from-code UTF-16 --to-code UTF-8 input_file.xml &gt; output_file.xml&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8633190730303505669?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8633190730303505669/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8633190730303505669' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8633190730303505669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8633190730303505669'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/12/converting-utf-16-to-utf-8.html' title='Converting UTF-16 to UTF-8'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1687556981992506349</id><published>2008-12-13T21:14:00.001+05:30</published><updated>2008-12-13T21:14:46.736+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>screen</title><content type='html'>when to I use screen :&lt;br /&gt;&lt;br /&gt; * When "nohup" is just not enough&lt;br /&gt; * When the power goes off and you are left in the middle of nowhere&lt;br /&gt; * When I need to log on to 10 different terminals each day&lt;br /&gt; * When I do not want to enter 10 different username passwords each day&lt;br /&gt;&lt;br /&gt;"screen" is a terrific unix utility that allows you to start a terminal without having to worry about you job being interreputed mid-way. It is better than nohup in that respect  nohup only allows unix commands to be started in a "nohup" fashion. If for instance you are working with an interactive program like sqlplus and your internet connection happen to break, you will loose your context and any transactions that you were working on.&lt;br /&gt;&lt;br /&gt;It essentially allows you following : &lt;br /&gt; * Multiple sessions in a single ssh window (screen multiplexing)&lt;br /&gt; * Ability to "resume" a session in the state you left it - irrespective of power outage, internet connection termination etc&lt;br /&gt;&lt;br /&gt;Here is how you use it :&lt;br /&gt;&lt;br /&gt;1. Make sure it is installed on your system by typing "screen --help"&lt;br /&gt;2. If it is not installed, you can install it by "yum install screen" on a fedora box.&lt;br /&gt;3. start a screen session by typing "screen" and you should be in a screen session.&lt;br /&gt;4. If you are disconnected or closed the terminal, type "screen -r -d" to reattach to the session&lt;br /&gt;&lt;br /&gt;Here are some of the short-cuts available (All after CTRL+A)&lt;br /&gt;&lt;br /&gt;  c : creates a new&lt;br /&gt;  n : next screen window&lt;br /&gt;  p : previous screen window&lt;br /&gt;  a : toggle between two screen windows&lt;br /&gt;  [0-9] : Go to a specific screen window identified by a number&lt;br /&gt;  A : Set the name of a screen window&lt;br /&gt;  " : List all the existing screen&lt;br /&gt;  ESC : Scroll up or down on a screen&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1687556981992506349?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1687556981992506349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1687556981992506349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1687556981992506349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1687556981992506349'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/12/screen.html' title='screen'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1874199836251912285</id><published>2008-11-15T11:03:00.003+05:30</published><updated>2008-11-15T11:10:49.944+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='cricket'/><category scheme='http://www.blogger.com/atom/ns#' term='india'/><title type='text'>Man on the moon (well almost)</title><content type='html'>India becomes the 4th Nation to put a lunar probe on the moon ! I am proud to be the 4th country to do that(as against the alleged 3rd world country banter from Matthew Hayden who knows nothing more than being a sore loser)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1874199836251912285?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1874199836251912285/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1874199836251912285' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1874199836251912285'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1874199836251912285'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/11/man-on-moon-well-almost.html' title='Man on the moon (well almost)'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-6739137775161073771</id><published>2008-10-19T09:18:00.002+05:30</published><updated>2008-10-19T09:19:52.374+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>pasting code in vim</title><content type='html'>:set paste &lt;br /&gt;&lt;br /&gt;paste the code &lt;br /&gt;&lt;br /&gt;:set nopaste&lt;br /&gt;&lt;br /&gt;set pastetoggle=F3 in your vimrc file is an alternative.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-6739137775161073771?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/6739137775161073771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=6739137775161073771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6739137775161073771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6739137775161073771'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/10/pasting-code-in-vim.html' title='pasting code in vim'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-6118554407994992514</id><published>2008-10-17T19:24:00.003+05:30</published><updated>2008-10-19T09:25:48.047+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='shell-scripts'/><title type='text'>Renaming Files in Linux</title><content type='html'>Type the following on commandline of a bash shell and change the logic as needed.&lt;br /&gt;&lt;br /&gt;&lt;pre code="sh"&gt;&lt;br /&gt;for i in `ls /home/ssinghal` ; do mv "$i" "$i.new" ; done&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-6118554407994992514?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/6118554407994992514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=6118554407994992514' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6118554407994992514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6118554407994992514'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/10/renaming-files-in-linux.html' title='Renaming Files in Linux'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2510804666278551064</id><published>2008-09-30T13:02:00.003+05:30</published><updated>2008-09-30T13:11:30.765+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>sudo without password</title><content type='html'>1. Log in to a unix box as root&lt;br /&gt;2. Execute "visudo" to open sudo editor&lt;br /&gt;3. Enter the following line &lt;br /&gt;&lt;username&gt;        ALL=(ALL)       NOPASSWD: ALL&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2510804666278551064?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2510804666278551064/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2510804666278551064' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2510804666278551064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2510804666278551064'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/09/sudo-without-password.html' title='sudo without password'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-6460614634652467630</id><published>2008-09-23T16:43:00.004+05:30</published><updated>2008-09-23T16:50:09.119+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Database Objects - Finding Dependencies</title><content type='html'>You come across tables in databases that are being populated by other pl/sql procs, triggers e.t.c what becomes difficult is to figure out which process is actually updating a table.&lt;br /&gt;&lt;br /&gt;The following query will list objects that refer a table "TABLE_A" which belongs to a schema "SCHEMA_A"&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="sql"&gt;&lt;br /&gt;select name,owner&lt;br /&gt;from dba_dependencies&lt;br /&gt;where referenced_name='TABLE_A' &lt;br /&gt;and referenced_owner='SCHEMA_A'&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-6460614634652467630?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/6460614634652467630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=6460614634652467630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6460614634652467630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/6460614634652467630'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/09/database-objects-finding-dependencies.html' title='Database Objects - Finding Dependencies'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-7559190256637517245</id><published>2008-08-19T16:12:00.003+05:30</published><updated>2008-08-19T16:32:46.628+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='jquery'/><title type='text'>JQuery - Getting Started</title><content type='html'>&lt;pre name="code" class="javascript"&gt;&lt;br /&gt;// Makes an element visible which has the id 'mydiv'&lt;br /&gt;$("#mydiv").show();&lt;br /&gt;  &lt;br /&gt;// Makes each odd tr element to have a blue backcolor&lt;br /&gt;$("tr:odd").css("background-color", "blue");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// What if we want to make the header row have a different look ? Show Me&lt;br /&gt;$("#results tr:first").css("background", "black");&lt;br /&gt;$("#results tr:first").css("color", "white");&lt;br /&gt;$("#results tr:first").css("font-weight", "bold");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// We also could have assigned a class name to the header tr element like this &lt;br /&gt;$("#results tr:first").addClass("header");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;//All span that are inside a div element (may not be immediate child of the div) will be selected.&lt;br /&gt;$("div span").css("border", "1px solid");&lt;br /&gt;&lt;br /&gt;//Here is how we select the links that are descendent of span which are direct children of a div&lt;br /&gt;$("div &gt; span a")&lt;br /&gt;&lt;br /&gt;//Here is how we can select a div with id mydiv &lt;br /&gt;$("div#mydiv")&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// Here is how we select all links under div elements that have css class set to mycss&lt;br /&gt;$("div.mycss a")&lt;br /&gt;&lt;br /&gt;// if we want to find a link that points to http://www.google.com then we would write&lt;br /&gt;$("a[href=http://www.google.com]")&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// Modifications&lt;br /&gt;$("body").prepend("&lt;img src='banner.jpg' /&gt;");&lt;br /&gt;$("div#mydialog").html("&lt;p&gt;Hi There!&lt;/p&gt;");&lt;br /&gt;$("#mytable").wrap("&lt;div&gt;&lt;/div&gt;");&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;// How to replace all hr elements (horizontal line) with a br element&lt;br /&gt;$("&lt;br/&gt;").replaceAll("hr");&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Reference : http://www.shafqatahmed.com/2008/08/mybutton-font-f.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7559190256637517245?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7559190256637517245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7559190256637517245' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7559190256637517245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7559190256637517245'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/08/jquery-getting-started.html' title='JQuery - Getting Started'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-7657737243611503774</id><published>2008-07-22T15:15:00.001+05:30</published><updated>2008-07-22T15:16:35.230+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='network'/><title type='text'>tcpdump : capturing data</title><content type='html'>capture all traffic on port 80 for a specific machine&lt;br /&gt;&lt;br /&gt;sudo tcpdump -A -s 0 -i eth0 dst or src host &lt;hostname&gt; and port 80&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Reference : http://code.google.com/support/bin/answer.py?answer=71567&amp;topic=12022&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7657737243611503774?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7657737243611503774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7657737243611503774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7657737243611503774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7657737243611503774'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/07/tcpdump-capturing-data.html' title='tcpdump : capturing data'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-7137706130293237986</id><published>2008-06-27T09:03:00.002+05:30</published><updated>2008-06-27T09:08:17.132+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Vim Movements - Some Common , Some Not so much</title><content type='html'>ESC + H  Moves to the line at the top of the screen.&lt;br /&gt;ESC + M  Moves to the line in the middle of the screen.&lt;br /&gt;ESC + L  Moves to the line at the bottom of the screen.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[Ctrl-F]  Move forwards one page.&lt;br /&gt;[Ctrl-B]  Move backwards one page.&lt;br /&gt;[Ctrl-D]  Move forwards by half a page.&lt;br /&gt;[Ctrl-U]  Move backwards by half a page.&lt;br /&gt;[Ctrl-E]  Display one more line at the bottom of the screen.&lt;br /&gt;[Ctrl-Y]  Display one more line at the top of the screen.&lt;br /&gt;&lt;br /&gt;Reference : http://en.wikibooks.org/wiki/Learning_the_vi_editor/vi_Reference#Movement&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7137706130293237986?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7137706130293237986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7137706130293237986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7137706130293237986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7137706130293237986'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/vim-movements-within-one-screen.html' title='Vim Movements - Some Common , Some Not so much'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-5543096436626007714</id><published>2008-06-23T07:44:00.001+05:30</published><updated>2008-06-23T07:46:34.948+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='firefox'/><title type='text'>Old Firefox Versions</title><content type='html'>http://releases.mozilla.org/pub/mozilla.org/firefox/releases/http://releases.mozilla.org/pub/mozilla.org/firefox/releases/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5543096436626007714?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5543096436626007714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5543096436626007714' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5543096436626007714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5543096436626007714'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/old-firefox-versions.html' title='Old Firefox Versions'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8662986462086161103</id><published>2008-06-12T14:36:00.003+05:30</published><updated>2008-06-12T14:37:39.300+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='network'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>nmap - portscan</title><content type='html'>scan all the ports in a given range on a specific machine &lt;br /&gt;&lt;br /&gt;nmap -p1-10000 127.0.0.1&lt;br /&gt;&lt;br /&gt;The above command will scan host 127.0.0.1(localhost) to see if any of the ports from range 1 to 10000 is up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8662986462086161103?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8662986462086161103/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8662986462086161103' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8662986462086161103'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8662986462086161103'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/nmap-portscan.html' title='nmap - portscan'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-2140707965614075729</id><published>2008-06-09T13:42:00.003+05:30</published><updated>2008-06-10T11:43:58.301+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle - Enabling Parallelism</title><content type='html'>If your database server is running on multiple processor system. You can make all your processors conspire to run a query. You might want to do this when the query is known to take a long time and there is no way it would return in sane time. At the same time, be careful to run this on production systems as it may hamper performance of the database.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="sql"&gt;&lt;br /&gt;select /*+ parallel(x 4) */ count(1)&lt;br /&gt;from huge_table&lt;br /&gt;where huge_table.x = 'somevalue'&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2140707965614075729?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2140707965614075729/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2140707965614075729' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2140707965614075729'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2140707965614075729'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/oracle-enabling-parallelism.html' title='Oracle - Enabling Parallelism'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2988361754506568063</id><published>2008-06-06T10:30:00.000+05:30</published><updated>2008-06-06T10:31:45.759+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim : ignoring white spaces in vimdiff</title><content type='html'>In your .vimrc file : &lt;br /&gt;set diffopt+=iwhite&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;http://vim.wikia.com/wiki/Ignore_white_space_in_vimdiff&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2988361754506568063?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2988361754506568063/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2988361754506568063' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2988361754506568063'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2988361754506568063'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/vim-ignoring-white-spaces-in-vimdiff.html' title='vim : ignoring white spaces in vimdiff'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-7991034357217921216</id><published>2008-06-04T08:28:00.000+05:30</published><updated>2008-06-04T08:29:14.029+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Appending to a register in vim</title><content type='html'>For example, you want to collect a sequence of lines into the a register.  Yank the first line with:&lt;br /&gt;&lt;br /&gt; "aY&lt;br /&gt;&lt;br /&gt;Now move to the second line, and type:&lt;br /&gt;&lt;br /&gt; "AY&lt;br /&gt;&lt;br /&gt;Repeat this command for all lines.  The a register now contains all those lines, in the order you yanked them.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Reference : Vim manual&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7991034357217921216?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7991034357217921216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7991034357217921216' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7991034357217921216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7991034357217921216'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/06/appending-to-register-in-vim.html' title='Appending to a register in vim'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-2741676150705351553</id><published>2008-05-13T18:21:00.010+05:30</published><updated>2008-05-15T17:48:09.859+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Bind Parameters in a complex query</title><content type='html'>Oracle Data dictionary tip :&lt;br /&gt;&lt;br /&gt;This is pretty useful when you are running a huge pl/sql code or a complex query and you need to know what bind parameters are being used for a query. helps figure out the iteration you are in amongst many other.&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="sql"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;select name, position, datatype, &lt;br /&gt;       value_string, value_anydata &lt;br /&gt;from V$SQL_BIND_CAPTURE where sql_id &lt;br /&gt;IN &lt;br /&gt; ( select a.sql_id &lt;br /&gt;   from v$sql a where sql_id in &lt;br /&gt;    ( select sql_id &lt;br /&gt;      from v$session &lt;br /&gt;      where osuser = 'ssinghal' &lt;br /&gt;      and machine = 'my_machine_name &lt;br /&gt;      and status = 'ACTIVE'&lt;br /&gt;     )&lt;br /&gt; ); &lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2741676150705351553?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2741676150705351553/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2741676150705351553' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2741676150705351553'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2741676150705351553'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/05/bind-parameters-in-complex-query.html' title='Bind Parameters in a complex query'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2699941779046752522</id><published>2008-05-06T13:34:00.002+05:30</published><updated>2008-05-06T13:38:00.021+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Search Replace in all Vim Buffers</title><content type='html'>&lt;code&gt;&lt;br /&gt;:bufdo %s/pattern/substitution/ge | update&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;bufdo – apply the following command to all buffers – see :help :bufdo.&lt;br /&gt;&lt;br /&gt;%s – search and replace the whole file&lt;br /&gt;&lt;br /&gt;g – change all instances in a line&lt;br /&gt;&lt;br /&gt;e – avoid an error when the pattern doesn’t exist in a buffer&lt;br /&gt;&lt;br /&gt;update – write the file only if changes were made&lt;br /&gt;&lt;br /&gt;source : http://vim.wikia.com/wiki/Search_and_replace_in_all_buffers&lt;/code&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2699941779046752522?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2699941779046752522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2699941779046752522' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2699941779046752522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2699941779046752522'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/05/search-replace-in-all-vim-buffers.html' title='Search Replace in all Vim Buffers'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8944238816567174437</id><published>2008-03-06T08:52:00.004+05:30</published><updated>2008-03-06T09:00:40.113+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><title type='text'>Getting Started with Rails 2.0 on ruby</title><content type='html'>&lt;span style="font-weight:bold;"&gt;create a rails project called student with mysql as database (default is sqllite)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;rails -d mysql student&lt;br /&gt;&lt;br /&gt;vim config/database.yml and edit username/password if required&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;create the database if not already created through backend&lt;/span&gt;&lt;br /&gt;rake db:create:all&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Generate a scaffold for a student&lt;/span&gt;&lt;br /&gt;ruby script/generate scaffold studen name:string address:string&lt;br /&gt;&lt;br /&gt;edit db/migrate/001_create_students.rb to add more tables or columns to existing table. This step can be skipped.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Create the Database tables&lt;/span&gt;&lt;br /&gt;rake db:migrate&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Run server&lt;/span&gt;&lt;br /&gt;ruby scripts\server&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Access the project through a browser&lt;/span&gt;&lt;br /&gt;http://localhost:3000/students&lt;br /&gt;&lt;br /&gt;tada&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8944238816567174437?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8944238816567174437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8944238816567174437' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8944238816567174437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8944238816567174437'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/03/getting-started-with-rails-20-on-ruby.html' title='Getting Started with Rails 2.0 on ruby'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1786694356661046186</id><published>2008-03-02T20:01:00.002+05:30</published><updated>2008-03-02T20:04:29.783+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim - stop autoindent while pasting text</title><content type='html'>On a putty terminal, when you copy-paste code from other sources, it results in a complete mess, due to vim trying to format it again. To avoid this, type&lt;br /&gt;&lt;br /&gt;:set pastetoggle=&lt;F3&gt;&lt;br /&gt;&lt;br /&gt;Now you can use &lt;F3&gt; to toggle between paste mode (and no paste mode).&lt;br /&gt;&lt;br /&gt;When in paste-mode auto indent will be turned off. This is very useful when pasting text that's already indented. &lt;br /&gt;&lt;br /&gt;source:&lt;br /&gt;http://amix.dk/blog/viewEntry/19083&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1786694356661046186?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1786694356661046186/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1786694356661046186' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1786694356661046186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1786694356661046186'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/03/vim-stop-autoindent-while-pasting-text.html' title='vim - stop autoindent while pasting text'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-361389500214274345</id><published>2008-03-02T19:54:00.002+05:30</published><updated>2008-03-02T19:56:58.890+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim - going back in time</title><content type='html'>supported since vim 7&lt;br /&gt;&lt;br /&gt;" Go back 1 minute&lt;br /&gt;:eariler 1m&lt;br /&gt;&lt;br /&gt;g+ and g- can be used for redo and undo ( u and CTRL + r still applies)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-361389500214274345?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/361389500214274345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=361389500214274345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/361389500214274345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/361389500214274345'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/03/vim-going-back-in-time.html' title='vim - going back in time'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-697548227011183877</id><published>2008-03-01T18:51:00.002+05:30</published><updated>2008-03-01T18:56:23.701+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Long Operations in Oracle</title><content type='html'>It is nice to know what queries are taking time to finish. The following sql figures out the "long operations" currently being processed&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;SELECT username,time_remaining,sofar/totalwork,message,target_desc&lt;br /&gt;FROM gv$session_longops where sofar&amp;lt;totalwork&lt;br /&gt;ORDER BY message&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-697548227011183877?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/697548227011183877/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=697548227011183877' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/697548227011183877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/697548227011183877'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/03/long-operations-in-oracle.html' title='Long Operations in Oracle'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-7987805701184032555</id><published>2008-02-13T20:15:00.001+05:30</published><updated>2008-02-13T20:15:42.482+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='links'/><category scheme='http://www.blogger.com/atom/ns#' term='webservices'/><title type='text'>Apache Web Service Framework</title><content type='html'>http://incubator.apache.org/cxf/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7987805701184032555?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7987805701184032555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7987805701184032555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7987805701184032555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7987805701184032555'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/apache-web-service-framework.html' title='Apache Web Service Framework'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2620617017597903424</id><published>2008-02-11T16:07:00.000+05:30</published><updated>2008-02-11T16:08:24.834+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim - recording keystrokes and reusing</title><content type='html'>http://www.vim.org/tips/tip.php?tip_id=144&lt;br /&gt;&lt;br /&gt;&lt;code&gt;The most useful feature that I find in VIM is the "recording" feature (:help recording).  I have used this to automatically insert function headers, re-indent lines, and convert some 34 source files into HTML.&lt;br /&gt;&lt;br /&gt;This feature is most useful when you want to do some repeated jobs, which you cant do easily using ".".  You can set about writing a function, define a mapping, etc, but then these things might take time.  By recording, you can try out and find the actual keystrokes that does the job.&lt;br /&gt;&lt;br /&gt;To start recording, press "q" in normal mode followed by any of "0-9a-z".  This will start recording the keystrokes to the register you choose.  You can also see the word "recording" in the status(?) line.  You can start the key sequences that you want to record.  You can go to insert mode and type if you want.&lt;br /&gt;&lt;br /&gt;To stop recording, press "q" in the normal mode.&lt;br /&gt;&lt;br /&gt;To playback your keystrokes, press "@" followed by the character you choose.  Pressing "@@" will repeat the same again. &lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2620617017597903424?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2620617017597903424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2620617017597903424' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2620617017597903424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2620617017597903424'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/vim-recording-keystrokes-and-reusing.html' title='vim - recording keystrokes and reusing'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-8778059614904069392</id><published>2008-02-08T19:45:00.001+05:30</published><updated>2008-02-08T19:47:23.322+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='svn'/><title type='text'>subversion : clean non-versioned files from svn source tree</title><content type='html'>svn status|egrep "^\?"|awk '{print $2}'|xargs rm -rf&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8778059614904069392?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8778059614904069392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8778059614904069392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8778059614904069392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8778059614904069392'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/subversion-clean-non-versioned-files.html' title='subversion : clean non-versioned files from svn source tree'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1873208445997458440</id><published>2008-02-08T08:51:00.000+05:30</published><updated>2008-02-08T19:47:44.845+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>ruby - installing from source</title><content type='html'>1. Download ruby.tar.gz  from rubyforge&lt;br /&gt;&lt;br /&gt;2. unzip and untar the file&lt;br /&gt;&lt;br /&gt;3. Navigate to extracted folder&lt;br /&gt;&lt;br /&gt;4. following steps ( like any other source compile on linux)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;./configure&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make install&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This will install ruby .&lt;br /&gt;&lt;br /&gt;5. To install an extention (say to install openssl on linux)&lt;br /&gt;&lt;br /&gt;go to ruby-source/ext/open ssl &lt;span style="font-family:monospace;"&gt;&lt;/span&gt;and execute following steps&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ruby extconf.rb&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;make install&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1873208445997458440?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1873208445997458440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1873208445997458440' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1873208445997458440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1873208445997458440'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/ruby-installing-from-source.html' title='ruby - installing from source'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8218924613122098634</id><published>2008-02-07T11:27:00.000+05:30</published><updated>2008-02-08T19:48:03.484+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='find'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><title type='text'>unix find - seach based on permissions</title><content type='html'>All the files in the current directory that does not have a write permission for user and group&lt;br /&gt;&lt;br /&gt;&lt;i&gt;find . -not -perm -ug=w&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;All files owned by 'ssinghal'&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;find . -owner ssinghal&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8218924613122098634?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8218924613122098634/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8218924613122098634' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8218924613122098634'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8218924613122098634'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/unix-find-seach-based-on-permissions.html' title='unix find - seach based on permissions'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-5857406021482755455</id><published>2008-02-04T12:44:00.000+05:30</published><updated>2008-02-04T12:49:18.534+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='code'/><title type='text'>Code Search Engines</title><content type='html'>TODO: Edit this post to give a description on special features of each search engine :)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/codesearch"&gt;http://www.google.com/codesearch&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.koders.com"&gt;http://www.koders.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.krugle.org"&gt;http://www.krugle.org&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.codase.com/"&gt;http://www.codase.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5857406021482755455?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5857406021482755455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5857406021482755455' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5857406021482755455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5857406021482755455'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/code-search-engines.html' title='Code Search Engines'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-5958389023809128096</id><published>2008-02-01T13:03:00.000+05:30</published><updated>2008-02-01T13:04:20.748+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='bestpractise'/><title type='text'>using sun.* packages in java</title><content type='html'>&lt;span style="font-weight:bold;"&gt;From : http://java.sun.com/products/jdk/faq/faq-sun-packages.html&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The classes that Sun includes with the Java 2 SDK, Standard Edition, fall into package groups java.*, javax.*, org.* and sun.*. All but the sun.* packages are a standard part of the Java platform and will be supported into the future. In general, packages such as sun.*, that are outside of the Java platform, can be different across OS platforms (Solaris, Windows, Linux, Macintosh, etc.) and can change at any time without notice with SDK versions (1.2, 1.2.1, 1.2.3, etc). Programs that contain direct calls to the sun.* packages are not 100% Pure Java. In other words:&lt;br /&gt;&lt;br /&gt;    The java.*, javax.* and org.* packages documented in the Java 2 Platform Standard Edition API Specification make up the official, supported, public interface.&lt;br /&gt;    If a Java program directly calls only API in these packages, it will operate on all Java-compatible platforms, regardless of the underlying OS platform. &lt;br /&gt;&lt;br /&gt;    The sun.* packages are not part of the supported, public interface.&lt;br /&gt;    A Java program that directly calls into sun.* packages is not guaranteed to work on all Java-compatible platforms. In fact, such a program is not guaranteed to work even in future versions on the same platform. &lt;br /&gt;&lt;br /&gt;For these reasons, there is no documentation available for the sun.* classes. Platform-independence is one of the great advantages of developing in the Java programming language. Furthermore, Sun and our licensees of Java technology are committed to maintaining backward compatibility of the APIs for future versions of the Java platform. (Except for code that relies on serious bugs that we later fix.) This means that once your program is written, the class files will work in future releases.&lt;br /&gt;&lt;br /&gt;Each company that implements the Java platform will do so in their own private way. The classes in sun.* are present in the SDK to support the Sun implementation of the Java platform: the sun.* classes are what make the Java platform classes work "under the covers" for the Sun Java 2 SDK. These classes will not in general be present on another vendor's Java platform. If your Java program asks for a class "sun.package.Foo" by name, it may fail with ClassNotFoundError, and you will have lost a major advantage of developing in Java.&lt;br /&gt;&lt;br /&gt;Technically, nothing prevents your program from calling into sun.* by name. From one release to another, these classes may be removed, or they may be moved from one package to another, and it's fairly likely that their interface (method names and signatures) will change. (From the Sun point of view, since we are committed to maintaining the Java platform, we need to be able to change sun.* to refine and enhance the platform.) In this case, even if you are willing to run only on the Sun implementation, you run the risk of a new version of the implementation breaking your program.&lt;br /&gt;&lt;br /&gt;In general, writing java programs that rely on sun.* is risky: they are not portable, and are not supported.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-5958389023809128096?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/5958389023809128096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=5958389023809128096' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5958389023809128096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/5958389023809128096'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/02/using-sun-packages-in-java.html' title='using sun.* packages in java'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-4636328574040833777</id><published>2008-01-30T08:17:00.000+05:30</published><updated>2008-02-08T19:48:42.975+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='regex'/><category scheme='http://www.blogger.com/atom/ns#' term='sed'/><title type='text'>Regular Expressions Across Multiple Lines</title><content type='html'>I was looking at this huge java file which had hundreds of SQL statements and thousands of java code interleaved like a spaghetti ! What I really needed was to analyze all the SQL statements in the file since they were all related to a single application which we were supposed to modify. I needed a mechanism to extract all the SQL statements from the file for sake of brevity.&lt;br /&gt;&lt;br /&gt;Simple regular expressions using vim or sed did not work since they all deal with a single line, but each one of them provide a mechanism to match regular expression over multiple lines.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;sed &lt;/span&gt;- the following command will extract all lines between a 'select' and the first ';' following that. Hence you would have printed all the sql queries from a file&lt;br /&gt;&lt;code&gt;&lt;br /&gt;sed -ne '/^select/,/;/p' SqlIntensiveFile.java&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;vim &lt;/span&gt;- using the 'g' command can achieve the same. For e.g. the following will delete all the sql queries from the file.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;%g/select/,/;/d&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-4636328574040833777?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4636328574040833777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4636328574040833777' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4636328574040833777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4636328574040833777'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/01/regular-expressions-across-multiple.html' title='Regular Expressions Across Multiple Lines'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-3806791749086973169</id><published>2008-01-23T18:43:00.001+05:30</published><updated>2008-01-23T18:43:51.038+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Formatting Oracle Timestamp</title><content type='html'>create table temp (a timestamp)&lt;br /&gt;&lt;br /&gt;insert into temp values(sysdate)&lt;br /&gt;&lt;br /&gt;select to_char(a,'MM/DD/YYYY HH24:MI:SS:FF3') from temp&lt;br /&gt;&lt;br /&gt;http://www.databasejournal.com/features/oracle/article.php/2234501&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3806791749086973169?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3806791749086973169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3806791749086973169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3806791749086973169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3806791749086973169'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/01/formatting-oracle-timestamp.html' title='Formatting Oracle Timestamp'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1483451549103402672</id><published>2008-01-23T17:21:00.000+05:30</published><updated>2008-01-23T17:23:16.312+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle Instance Configuration Parameters</title><content type='html'>To find out the parameters that oracle is using for configuring an instance, logon to that instance using sqlplus and execute the following command.&lt;br /&gt;&lt;br /&gt;sql&gt; show parameters&lt;br /&gt;&lt;br /&gt;This will display list of all oracle configuration parameters with their current values&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1483451549103402672?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1483451549103402672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1483451549103402672' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1483451549103402672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1483451549103402672'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/01/oracle-instance-configuration.html' title='Oracle Instance Configuration Parameters'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-8311703856057196828</id><published>2008-01-14T11:52:00.000+05:30</published><updated>2008-01-14T11:54:29.779+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Block Select in Vim</title><content type='html'>Go to the visual mode using "ctrl + v" instead of "v", then use the motion arrow keys *hjkl* to select the block you want.&lt;br /&gt;&lt;br /&gt;Perform any copy/delete/edit function you would normally perform using vim ( y , d etc)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-8311703856057196828?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/8311703856057196828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=8311703856057196828' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8311703856057196828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/8311703856057196828'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/01/block-select-in-vim.html' title='Block Select in Vim'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1158185185466432324</id><published>2008-01-05T19:59:00.000+05:30</published><updated>2008-01-05T20:00:38.591+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='http'/><category scheme='http://www.blogger.com/atom/ns#' term='web'/><title type='text'>GET POST PUT</title><content type='html'>&lt;span class="body"&gt;&lt;p&gt;       When a browser requests a normal page from a server, it uses       the "GET" method. This is the standard way to get back       information from a server. The information itself may come       from a static page, a CGI program, a server-side include page       or any other source handled by the server. By definition it       is safe for a browser to obtain a page by GET as many times       as it likes - it will never cause any permanent action on the       server (such as entering a product order).     &lt;/p&gt;     &lt;p&gt;       To perform a permanent action on the server, the "POST"       method is used. This method must be handled by a program or       script, and the browser should not re-request a POST page       without getting the user to confirm it. This POST method is       used when a script or program requires a lot of form data       input or when the request makes the server perform a real       action such as entering an order.     &lt;/p&gt;     &lt;p&gt;       The "PUT" method is similar to the POST method in that it can       cause information to be updated on the server. The difference       is that the POST method is normally handed a script which is       explicitly named by the resource (that is, something that       already exists), while a PUT request could be directed at a       resource which does not (yet) exist. Another difference is       that the POST method can be used in response to a form, while       the PUT method can only contain a single data item.  The       PUT method is suited for publishing pages.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;Reference :&lt;br /&gt;http://www.apacheweek.com/features/put&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1158185185466432324?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1158185185466432324/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1158185185466432324' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1158185185466432324'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1158185185466432324'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2008/01/get-post-put.html' title='GET POST PUT'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-4082411627463698067</id><published>2007-10-18T15:02:00.001+05:30</published><updated>2008-02-08T19:49:12.697+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Unix Login Without Password (Setting login keys)</title><content type='html'>Client : Machine &lt;span style="font-weight: bold;"&gt;from &lt;/span&gt;where you want to log-on&lt;br /&gt;Server : Destination machine where you want &lt;span style="font-weight: bold;"&gt;to &lt;/span&gt;log-on from&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1. On the client machine &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Create the &lt;span style="font-style: italic;"&gt;key&lt;/span&gt;(id_rsa) file with appropriate permissions&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@client$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;cd ~ssinghal/.ssh&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@client&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;$&lt;/span&gt;touch id_rsa&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@client$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;chmod 600 id_rsa&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Generate is_rsa file&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@client$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;ssh-keygen -t rsa&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Press enter when you are prompted for a passphrase or for entering a file name ( accept the default)&lt;br /&gt;&lt;br /&gt;Id is stored in ~ssinghal/.ssh/id_rsa&lt;br /&gt;&lt;br /&gt;Your identification has been saved in /home/ssinghal/.ssh/id_rsa.&lt;br /&gt;Your public key has been saved in /home/ssinghal/.ssh/id_rsa.pub.&lt;br /&gt;The key fingerprint is:&lt;br /&gt;2c:ce:0d:e4:53:83:d3:41:95:82:5f:cc:e5:8f:a1:6b ssinghal@MACHINENAME&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2. copy the id_rsa.pub to server&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Using any scp or ftp mechanism&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3. On the server machine&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;SSH to the server machine and create keys file with appropriate permissions&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@server$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;cd ~ssinghal/.ssh/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@server$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;touch authorized_keys2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@server$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;chmod 600 authorized_keys2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@server$&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;cat id_rsa.pub &gt;&gt; authorized_keys2&lt;br /&gt;( id_rsa.pub is client's public key)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Note: The username on client and server needs to be same ( If I am not mistaken)&lt;br /&gt;&lt;br /&gt;Logout and from the client machine try to ssh again, you should be able to log-on with just your username&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="font-weight: bold;"&gt;ssinghal@client$&lt;/span&gt; ssh ssinghal@server&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-4082411627463698067?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/4082411627463698067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=4082411627463698067' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4082411627463698067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/4082411627463698067'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/10/unix-login-without-password-setting.html' title='Unix Login Without Password (Setting login keys)'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1967165912314491091</id><published>2007-10-12T12:04:00.001+05:30</published><updated>2009-04-08T07:32:42.699+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Formatting XML in vim</title><content type='html'>&lt;code&gt;":silent 1,$!xmllint --format --recover - 2&gt;/dev/null" &lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;http://www.vim.org/tips/tip.php?tip_id=349&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Updated vim tips URL : &lt;/p&gt;&lt;p&gt;http://vim.wikia.com/wiki/Format_your_xml_document_using_xmllint&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1967165912314491091?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1967165912314491091/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1967165912314491091' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1967165912314491091'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1967165912314491091'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/10/formatting-xml-in-vim.html' title='Formatting XML in vim'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1186044484026878649</id><published>2007-10-12T10:25:00.001+05:30</published><updated>2009-04-26T21:29:56.867+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='tools'/><category scheme='http://www.blogger.com/atom/ns#' term='eclipse'/><title type='text'>Eclipse Tools I Use</title><content type='html'>This list keeps on growing and changing when I discover new plug-ins. Here is my current configuration of eclipse. Along with eclipse update sites.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Base Eclipse Version &lt;/span&gt;: 3.3.0 Europa,   http://download.eclipse.org/releases/europa&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Web Tools Platform  &lt;/span&gt;: http://download.eclipse.org/webtools/updates&lt;br /&gt;It Includes many cool features, best of which is JSP Debugging options and unbelievable support for editing WSDL files for web-services&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;JSEclipse&lt;/span&gt;: Javascript plug-in from Adobe(now), http://download.macromedia.com/pub/labs/jseclipse/autoinstall/&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Subclipse&lt;/span&gt;, SVN plugin for eclipse : http://subclipse.tigris.org/update_1.2.x&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Perl Editor &lt;/span&gt;: http://e-p-i-c.sourceforge.net/updates&lt;br /&gt;I prefer VI to work with perl files, but fancy it for its auto-complete features.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ShellEd &lt;/span&gt;for browsing through shell scripts - No better way than VI to actually code and test them :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1186044484026878649?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1186044484026878649/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1186044484026878649' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1186044484026878649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1186044484026878649'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/10/eclipse-tools-i-use.html' title='Eclipse Tools I Use'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-687418726971370706</id><published>2007-10-01T18:24:00.000+05:30</published><updated>2007-10-01T19:27:40.180+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle - Common Datafile Operations</title><content type='html'>&lt;span style="color: rgb(51, 0, 51);font-size:180%;" &gt;Adding a table space&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ALTER TABLESPACE users&lt;br /&gt;ADD DATAFILE ‘/home/ssinghal/oradata/users01.dbf' SIZE 10M&lt;br /&gt;AUTOEXTEND ON&lt;br /&gt;NEXT 512K&lt;br /&gt;MAXSIZE 250M&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 51);font-size:180%;" &gt;Adding a table space with minimal options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ALTER TABLESPACE name ADD DATAFILE ‘filespec’ SIZE 200M;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 51);font-size:180%;" &gt;Altering a tablespace by adding a new datafile&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;ALTER TABLESPACE VPN2_LRG_TBLS&lt;br /&gt;ADD DATAFILE '/home/ssinghal/oradata/users02.dbf' SIZE 100M&lt;br /&gt;AUTOEXTEND ON&lt;br /&gt;NEXT 1024K&lt;br /&gt;MAXSIZE 250M&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 0, 51);font-size:180%;" &gt;Resizing a data-file&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;alter database datafile '/home/ssinghal/oradata/users02.dbf' resize 500M&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dropping a datafile&lt;br /&gt;&lt;br /&gt;alter database datafile 20 offline drop&lt;br /&gt;&lt;br /&gt;Note : ID of datafile can be obtained from dba_data_file&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-687418726971370706?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/687418726971370706/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=687418726971370706' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/687418726971370706'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/687418726971370706'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/10/oracle-common-datafile-operations.html' title='Oracle - Common Datafile Operations'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-2616382018438057344</id><published>2007-08-27T22:24:00.000+05:30</published><updated>2007-08-27T22:26:39.228+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Oracle Procedure Source code from Dictionary</title><content type='html'>SELECT to_char(text)&lt;br /&gt;FROM user_source&lt;br /&gt;WHERE type IN ('PACKAGE' ,'PROCEDURE','TRIGGER')&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-2616382018438057344?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/2616382018438057344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=2616382018438057344' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2616382018438057344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/2616382018438057344'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/08/oracle-procedure-source-code-from.html' title='Oracle Procedure Source code from Dictionary'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-1846214349618542352</id><published>2007-08-19T12:10:00.002+05:30</published><updated>2008-11-19T12:34:35.261+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><title type='text'>Java Collections Overview</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_L7D-auk_h8A/RsfmRl3QblI/AAAAAAAAAFg/9_zVsNKbG6w/s1600-h/JavaCollections.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_L7D-auk_h8A/RsfmRl3QblI/AAAAAAAAAFg/9_zVsNKbG6w/s400/JavaCollections.png" alt="" id="BLOGGER_PHOTO_ID_5100298292916416082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;&lt;table&gt;&lt;br /&gt;&lt;tbody&gt;&lt;tr style&gt;&lt;br /&gt;&lt;th&gt;ConcreteClass&lt;/th&gt;&lt;br /&gt;&lt;th&gt;Interface&lt;/th&gt;&lt;br /&gt;&lt;th&gt;Description&lt;/th&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;tr&gt;&lt;br /&gt;&lt;td&gt;ArrayList&lt;/td&gt;&lt;br /&gt;&lt;td&gt;List&lt;/td&gt;&lt;br /&gt;&lt;td&gt;TBD&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;--&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1846214349618542352?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1846214349618542352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1846214349618542352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1846214349618542352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1846214349618542352'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/08/java-collections-overview.html' title='Java Collections Overview'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_L7D-auk_h8A/RsfmRl3QblI/AAAAAAAAAFg/9_zVsNKbG6w/s72-c/JavaCollections.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-163141424380202151</id><published>2007-08-15T19:37:00.000+05:30</published><updated>2007-08-15T19:40:58.464+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='shell-scripts'/><title type='text'>Getopts with bash</title><content type='html'>&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;pre&gt;&lt;span class="comment"&gt;#!/bin/sh&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="ident"&gt;usage&lt;/span&gt;&lt;span class="punct"&gt;()&lt;/span&gt;&lt;br /&gt;&lt;span class="punct"&gt;{&lt;/span&gt;&lt;br /&gt;      &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;Usage: $0 -a all -b ball&lt;/span&gt;&lt;span class="punct"&gt; -c -d -e";&lt;/span&gt;&lt;br /&gt;      &lt;span class="ident"&gt;exit&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt;&lt;span class="punct"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="punct"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="keyword"&gt;if&lt;/span&gt; &lt;span class="punct"&gt;[&lt;/span&gt; &lt;span class="global"&gt;$#&lt;/span&gt; &lt;span class="punct"&gt;-&lt;/span&gt;&lt;span class="ident"&gt;lt&lt;/span&gt; &lt;span class="number"&gt;1&lt;/span&gt; &lt;span class="punct"&gt;]&lt;/span&gt; &lt;span class="punct"&gt;;&lt;/span&gt; &lt;span class="keyword"&gt;then&lt;/span&gt;&lt;br /&gt;      &lt;span class="ident"&gt;usage&lt;/span&gt;&lt;span class="punct"&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span class="ident"&gt;fi&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="comment"&gt;# ":" decides which options require an argument&lt;/span&gt;&lt;br /&gt;&lt;span class="comment"&gt;# In the example below options "a" and "b" will require a value to be passed along&lt;/span&gt;&lt;br /&gt;&lt;span class="keyword"&gt;while&lt;/span&gt; &lt;span class="ident"&gt;getopts&lt;/span&gt; &lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="symbol"&gt;:b:cde&lt;/span&gt; &lt;span class="ident"&gt;opt&lt;/span&gt;&lt;br /&gt;&lt;span class="keyword"&gt;do&lt;/span&gt;&lt;br /&gt;      &lt;span class="keyword"&gt;case&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;$opt&lt;/span&gt;&lt;span class="punct"&gt;"&lt;/span&gt; &lt;span class="keyword"&gt;in&lt;/span&gt;&lt;br /&gt;              &lt;span class="ident"&gt;a&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;hello $OPTARG&lt;/span&gt;&lt;span class="punct"&gt;";;&lt;/span&gt;&lt;br /&gt;              &lt;span class="ident"&gt;b&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;hello $OPTARG&lt;/span&gt;&lt;span class="punct"&gt;";;&lt;/span&gt;&lt;br /&gt;              &lt;span class="ident"&gt;c&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;c is selected&lt;/span&gt;&lt;span class="punct"&gt;";;&lt;/span&gt;&lt;br /&gt;              &lt;span class="ident"&gt;d&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;d is selected&lt;/span&gt;&lt;span class="punct"&gt;";;&lt;/span&gt;&lt;br /&gt;              &lt;span class="ident"&gt;e&lt;/span&gt;&lt;span class="punct"&gt;)&lt;/span&gt; &lt;span class="ident"&gt;echo&lt;/span&gt; &lt;span class="punct"&gt;"&lt;/span&gt;&lt;span class="string"&gt;e is selected&lt;/span&gt;&lt;span class="punct"&gt;";;&lt;/span&gt;&lt;br /&gt;              \&lt;span class="char"&gt;?)&lt;/span&gt; &lt;span class="ident"&gt;usage&lt;/span&gt;&lt;span class="punct"&gt;;;&lt;/span&gt;&lt;br /&gt;      &lt;span class="ident"&gt;esac&lt;/span&gt;&lt;br /&gt;&lt;span class="ident"&gt;done&lt;/span&gt; &lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-163141424380202151?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/163141424380202151/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=163141424380202151' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/163141424380202151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/163141424380202151'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/08/getopts-with-bash.html' title='Getopts with bash'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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-6820481775641762988.post-1172844838658488718</id><published>2007-07-11T20:03:00.000+05:30</published><updated>2008-02-08T19:49:31.782+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><title type='text'>UNIX - find cheet sheet</title><content type='html'>Find all files named "foo" in directory "/" recursively&lt;br /&gt;find / -name foo&lt;br /&gt;&lt;br /&gt;Find all files named "foo" in directory "/"&lt;br /&gt;find / -maxdepth 1 -name foo&lt;br /&gt;&lt;br /&gt;Find all files name "foo" in current directory descending recursively&lt;br /&gt;find . -name foo&lt;br /&gt;&lt;br /&gt;Find all files starting with "foo" and ending with "bar" in the current directory&lt;br /&gt;find . -name foo*bar&lt;br /&gt;find . -name "foo*bar"&lt;br /&gt;&lt;br /&gt;Find all files modified in the last seven days and tar them&lt;br /&gt;find / -type f -mtime -7 | xargs tar -rf weekly_incremental.tar&lt;br /&gt;&lt;br /&gt;Find all files named core and delete them&lt;br /&gt;find / -name core | xargs /bin/rm -f&lt;br /&gt;find / -name core -exec '/bin/rm -f {} ;'&lt;br /&gt;&lt;br /&gt;Locate files modified less than 10 minutes ago&lt;br /&gt;find / -mmin -10&lt;br /&gt;&lt;br /&gt;locate files that are writeable by "others"&lt;br /&gt;find . -perm +o=w&lt;br /&gt;&lt;br /&gt;Locate files owned by a user&lt;br /&gt;find . -name core -user ssinghal&lt;br /&gt;&lt;br /&gt;Find mtime and mmin options&lt;br /&gt;When specifying time with find options such as -mmin (minutes) or -mtime (24 hour periods, starting from now), you can specify a number "n" to mean exactly n, "-n" to mean less than n, and "+n" to mean more than n.&lt;br /&gt;find . -mtime 0 # find files modified within the past 24 hours&lt;br /&gt;find . -mtime -1 # find files modified within the past 24 hours&lt;br /&gt;find . -mtime 1 # find files modified between 24 and 48 hours ago&lt;br /&gt;find . -mtime +1 # find files modified more than 48 hours ago&lt;br /&gt;find . -mmin +5 -mmin -10 # find files modifed between 6 and 9 minutes ago&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-1172844838658488718?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/1172844838658488718/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=1172844838658488718' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1172844838658488718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/1172844838658488718'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/07/unix-find-cheet-sheet.html' title='UNIX - find cheet sheet'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-7527931820356378902</id><published>2007-07-10T11:34:00.000+05:30</published><updated>2007-07-10T11:50:47.967+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='commandline'/><category scheme='http://www.blogger.com/atom/ns#' term='emacs'/><title type='text'>moving around in bash</title><content type='html'>when you are in bash , do as emacs does.&lt;br /&gt;&lt;br /&gt;The default orientation of bash command line is emacs. And though I am a big vim fan, I have gotten used to emacs mode for command line. And as they say, old habits die hard!&lt;br /&gt;&lt;br /&gt;Here are some shortcuts to help you move around on the command line .&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;  &lt;li&gt;ctrl + e : takes you to the end of a command &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;ctrl + a : takes you to the beginning of a command &lt;/li&gt;&lt;br /&gt;  &lt;li&gt;esc + f : takes you one word forward&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;esc + b : takes you one word backward&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;esc + d : deletes a word and puts it in a buffer&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;crtl + k : deletes the line from current word and puts it in a buffer&lt;/li&gt;&lt;br /&gt;  &lt;li&gt;ctrl + y : paste contents of buffer&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-7527931820356378902?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/7527931820356378902/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=7527931820356378902' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7527931820356378902'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/7527931820356378902'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/07/moving-around-in-bash.html' title='moving around in bash'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6820481775641762988.post-3925135710773813219</id><published>2007-07-10T11:24:00.000+05:30</published><updated>2007-07-10T11:27:42.640+05:30</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Vim and Sqlplus</title><content type='html'>open the following file : &lt;br /&gt;&lt;code&gt;$ORACLE_HOME/sqlplus/admin/glogin.sql&lt;/code&gt;&lt;br /&gt;Add following line :&lt;br /&gt;&lt;code&gt;DEFINE _EDITOR='gvim -c "set filetype=sql"'&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Typing edit will now open your favorite editor&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6820481775641762988-3925135710773813219?l=compdottech.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://compdottech.blogspot.com/feeds/3925135710773813219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6820481775641762988&amp;postID=3925135710773813219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3925135710773813219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6820481775641762988/posts/default/3925135710773813219'/><link rel='alternate' type='text/html' href='http://compdottech.blogspot.com/2007/07/vim-and-sqlplus.html' title='Vim and Sqlplus'/><author><name>sandeep</name><uri>http://www.blogger.com/profile/07733361360323444151</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>
