I've been using Bash a lot, and sometimes when typing long command line, having to press the arrow button multiple times to go to the first character is very tiring.
This are few important shortcut that I start to use:
Ctrl + a - Jump to the start of the line
Ctrl + e - Jump to the end of the line
Alt + d - Delete word
Alt + f - Move forward a word, where a word is composed of letters and digits
Alt + b - Move backward a word
More info from this blogpost : http://linuxhelp.blogspot.com/2005/08/bash-shell-shortcuts.html
Or from Bash Reference Manual regarding Readline Movement : http://www.gnu.org/software/bash/manual/bashref.html#Readline-Movement-Commands
Friday, 1 October 2010
Several important Bash shortcut
Thursday, 24 June 2010
Looking for undergraduates that interested to learn and practicing PHP and MySQL
Hi all,
I'm looking for undergraduates in IPTA/IPTS, preferably between 1st year to 3rd year, that are interested to learn and practice PHP and MySQL.
The undergraduates should be studying around Klang Valley for logistics reason.
The requirement is, they will be assigned a task or mini project, and they will learn on their own what ever topic needed in PHP and MySQL in order to complete the task or the mini project.
If they manage to complete the mini project, which I expected to be around 1 month depending on complexity, they will be rewarded with cash. The amount will be informed before the task start.
During the project, I will be available for consultation, and I expect the candidate to have a face-to-face discussion about the project progress with me, preferably once a week.
At the end of the project, the whole code and documentation will become my intellectual property, but they are allowed to quote the project name and knowledge that they have gained for their own curricular vitae.
If you an undergraduate and you are interested, please send your curricular vitae to my email at sharuzzaman@gmail.com
If you know any undergraduate that would be interested, please forward them this info, and ask them to send their curricular vitae to my email above.
Thanks.
I'm looking for undergraduates in IPTA/IPTS, preferably between 1st year to 3rd year, that are interested to learn and practice PHP and MySQL.
The undergraduates should be studying around Klang Valley for logistics reason.
The requirement is, they will be assigned a task or mini project, and they will learn on their own what ever topic needed in PHP and MySQL in order to complete the task or the mini project.
If they manage to complete the mini project, which I expected to be around 1 month depending on complexity, they will be rewarded with cash. The amount will be informed before the task start.
During the project, I will be available for consultation, and I expect the candidate to have a face-to-face discussion about the project progress with me, preferably once a week.
At the end of the project, the whole code and documentation will become my intellectual property, but they are allowed to quote the project name and knowledge that they have gained for their own curricular vitae.
If you an undergraduate and you are interested, please send your curricular vitae to my email at sharuzzaman@gmail.com
If you know any undergraduate that would be interested, please forward them this info, and ask them to send their curricular vitae to my email above.
Thanks.
Thursday, 20 May 2010
Suppressing getopts unknown option error message in ksh
I'm writing a new ksh (Korn Shell) script today. Before this, I only write bash script, and I believe the knowledge that I gain today will be valuable to a lot of people.
When I'm trying to use getopts in ksh, the script complain that there are "unknown option" after I put some option that are not available.
Let see the code, and the way it respond.
user@computer $ cat -n getopts.sh
1 #!/bin/ksh
2
3 while getopts "h" arg
4 do
5 case $arg in
6 h)
7 echo "Help!"
8 ;;
9 ?)
10 echo "Others"
11 ;;
12 esac
13 done
user@computer $ ./getopts.sh -h
Help!
user@computer $ ./getopts.sh -a
./getopts.sh[13]: -a: unknown option
Others
I expect when I put the option "-a", the script will just output "Others" without any issue. But it does not. Something is not correct with the code.
Searching the Internet for answer, I found this very informative site: http://aplawrence.com/Unix/getopts.html
At first read, the site did not specifically mentioned that you have to put leading ":" to suppress the errors, but after reading it the second time, I got the idea, especially after reading this word:
So, to solve the issue, some minor modification has to be done to the script above. Let see the updated script and the output after the modification.
user@computer $ cat -n getopts.sh
1 #!/bin/ksh
2
3 while getopts ":h" arg
4 do
5 case $arg in
6 h)
7 echo "Help!"
8 ;;
9 ?)
10 echo "Others"
11 ;;
12 esac
13 done
user@computer $ ./getopts.sh -h
Help!
user@computer $ ./getopts.sh -a
Others
Voila! The problem solved :)
Happy scripting :)
When I'm trying to use getopts in ksh, the script complain that there are "unknown option" after I put some option that are not available.
Let see the code, and the way it respond.
user@computer $ cat -n getopts.sh
1 #!/bin/ksh
2
3 while getopts "h" arg
4 do
5 case $arg in
6 h)
7 echo "Help!"
8 ;;
9 ?)
10 echo "Others"
11 ;;
12 esac
13 done
user@computer $ ./getopts.sh -h
Help!
user@computer $ ./getopts.sh -a
./getopts.sh[13]: -a: unknown option
Others
I expect when I put the option "-a", the script will just output "Others" without any issue. But it does not. Something is not correct with the code.
Searching the Internet for answer, I found this very informative site: http://aplawrence.com/Unix/getopts.html
At first read, the site did not specifically mentioned that you have to put leading ":" to suppress the errors, but after reading it the second time, I got the idea, especially after reading this word:
The leading ":" works like it does in "getopt" to suppress errors
So, to solve the issue, some minor modification has to be done to the script above. Let see the updated script and the output after the modification.
user@computer $ cat -n getopts.sh
1 #!/bin/ksh
2
3 while getopts ":h" arg
4 do
5 case $arg in
6 h)
7 echo "Help!"
8 ;;
9 ?)
10 echo "Others"
11 ;;
12 esac
13 done
user@computer $ ./getopts.sh -h
Help!
user@computer $ ./getopts.sh -a
Others
Voila! The problem solved :)
Happy scripting :)
Monday, 29 March 2010
Alternative way to grep IP address accurately from log file
This post is an alternative way to grep IP address from log file, as a reply for Hisham Mohd Aderis (linuxwave) post.
Let say we have a log file that contain IP address as below
$ cat ipadd.txt
192.168.1.1
192.168.1.10
192.168.1.11
192.168.1.100
192.168.1.101
Let say we have a log file that contain IP address as below
$ cat ipadd.txt
192.168.1.1
192.168.1.10
192.168.1.11
192.168.1.100
192.168.1.101
If we use just grep to get 192.168.1.1, all the IP address will be returned. This is because the default setting for grep regular expression is greedy, which means that it will match anything that have full or part of the string that we are searching for.
$ grep 192.168.1.1 ipadd.txt
192.168.1.1
192.168.1.10
192.168.1.11
192.168.1.100
192.168.1.101
But, grep got a "-w" switch that will match only the word that we are looking for.
-w, --word-regexp
Select only those lines containing matches that form whole
words. The test is that the matching substring must either be
at the beginning of the line, or preceded by a non-word
constituent character. Similarly, it must be either at the end
of the line or followed by a non-word constituent character.
Word-constituent characters are letters, digits, and the
underscore.
So, to match an IP address correctly, we should use the command as below
$ grep -w 192.168.1.1 ipadd.txt
192.168.1.1
$ grep -w 192.168.1.10 ipadd.txt
192.168.1.10
As shown, the IP address will be matched to the one that we are looking for.
Happy scripting. :)
Monday, 4 January 2010
My 2010 resolution
A lot of people failed to achieve their last year resolution. I did not make any resolution last year, but I believe I made a lot of progress last year. New job, better salary, Suse Linux Professional 10 certification, ITIL v3 Foundation certification... quite an achievement I would say.
Most people also think, resolution should be made on new year day, but I think, resolution should be made year round. In Islam, there is a concept of daily muhasabah before you goes to sleep, to think what you have done good today, what you have not done what you should be doing, what bad thing that you have done and what you should do tomorrow to make sure it is a better day than yesterday, and you become a better person than yesterday.
So, if you still don't have you 2010 resolution, read this article first: New Year's Resolutions Experiment
In essence, the article mention that
For 2010, I have several resolution, but I will try my best to achieve it for the length of the year. Here goes:
1. Be a Red Hat Certified Engineer
2. Learn Python, become a master, and get certified.
3. Be a Debian Developer
Resolution number 3 will be very tough, but I know I should start doing something to become a Debian Developer. Let see if I can achieve what I have planned here by the end of the year :)
Most people also think, resolution should be made on new year day, but I think, resolution should be made year round. In Islam, there is a concept of daily muhasabah before you goes to sleep, to think what you have done good today, what you have not done what you should be doing, what bad thing that you have done and what you should do tomorrow to make sure it is a better day than yesterday, and you become a better person than yesterday.
So, if you still don't have you 2010 resolution, read this article first: New Year's Resolutions Experiment
In essence, the article mention that
Men were significantly more likely to succeed when asked to engage in either goal setting (e.g., instead of trying to lose weight in general, aiming to lose a pound each week), or focusing on the rewards associated with achieving their goal (e.g., being more attractive to the opposite sex).It also said that it is better to have only one resolution, and the resolution is specific.
Women were more successful when they told their friends and family about their resolution, or were encouraged to be especially resilient and not to give up because they had reverted to the old habits (e.g., if dieting, treating a chocolate binge as a temporary setback rather than as failure).
For 2010, I have several resolution, but I will try my best to achieve it for the length of the year. Here goes:
1. Be a Red Hat Certified Engineer
2. Learn Python, become a master, and get certified.
3. Be a Debian Developer
Resolution number 3 will be very tough, but I know I should start doing something to become a Debian Developer. Let see if I can achieve what I have planned here by the end of the year :)
Labels:
certification,
Debian,
muhasabah,
Python,
resolution,
RHCE
Subscribe to:
Posts (Atom)