Say you want to print the lines 3 and 7, and all lines from 11 to 15 of a text-file. The following SED one-liner will do for you
sed -n -e ‘3p’ -e ‘5p’ -e ‘11,15p’ textfile.txt
Tags:commandline english linux tech |
Filed on October 31st, 2009 | 1 Comment »
Several people have recently asked me whether or not it is possible to use tuples in their shell script. One example is running a program with a varying set of parameters. Since they often did not find a good solution, they began to formulate their problem in a higher-level scripting language like Ruby. Surprisingly, you [...]
Tags:commandline english linux scripting tech |
Filed on October 2nd, 2009 | 1 Comment »
I like to have the following snippet in my .zshrc (or .bashrc) for convenience
alias lsd=”ls -l|awk ‘/^d/ {print \$9}’”
It displays all subdirectories underneath the current directory. The goodness in this variant is that it gives you the pure names and that you can use it in loops without hassle :
for d in `lsd`; do
mv $d/resultfile.dat [...]
Tags:commandline english linux |
Filed on June 7th, 2009 | No Comments »
This one is for zsh users. As you read this, open your editor at once an add the following line to your .zshrc
setopt extendedglob
This will activate extended globbing and allow you to do even more zsh commandline candy. Here some examples
rm ^important.txt # remove all files in the current dir but important.txt
rm *.log~apache.log # [...]
Tags:commandline english linux tech |
Filed on January 16th, 2009 | No Comments »
Linux workers like you and me often need to move a bunch of files. For example, you want to rename all *.dat files into *.dat_save, or you want to rename all files foo.* into something like bar.*. This, however, is not easy to do using the move command as 1) “mv” only supports a single [...]
Tags:commandline english linux tech |
Filed on November 26th, 2008 | 1 Comment »
Insert the following function into your .bashrc:
# Function that gets a column and row from a tab separated file
tableEntry()
{
sed -n “$1p” $3 | awk ‘{print $’$2′}’
}
You are then able to write
tableEntry 2 5 file.txt
to get the 2nd row and 5th column from any file.
Tags:commandline english linux tech |
Filed on April 18th, 2008 | No Comments »