Recent Notes

Displaying keyword search results 1 - 10
Created by magnum on June 20, 2011 20:52:22    Last update: June 21, 2011 08:44:01
Several ways to remove empty lines from a file with Unix utilities: Remove all empty lines with grep : cat test.txt | grep -v '^\s*$' or grep -v '^\s*$' test.txt Remove all empty lines with sed : sed '/^\s*$/d' test.txt Remove empty lines at the beginning of file with sed : sed '0,/\w/p' leadingBlankLines.txt | sed '0,/\w/d...
Created by voodoo on June 21, 2011 08:19:33    Last update: June 21, 2011 08:34:28
Got "base64: invalid input" error: $ base64 -d base64_encoded.txt >original.bin ba... which can be easily dismissed as "input is invalid base64 encoded" or "partial input". But I know it's valid base64 encoded input! The problem was, the input was base64 encoded on Windows! The error goes away after converting to Unix format with dos2unix . dos2unix < base64_encoded.txt | base64 -d >origina... Version of base64 used: $ base64 --version base64 (GNU coreutils) 8.5 ...
Created by woolf on May 20, 2011 14:00:35    Last update: May 20, 2011 14:01:36
To remove new line characters from a file: with tr : tr -d '\n' < the-file.txt or cat the-file.txt | tr -d '\n' with sed : sed ':a;N;$!ba;s/\n//g' the-file.txt or cat the-file.txt | sed ':a;N;$!ba;s/\n//g' The sed version is a bunch of commands to manipulate the register etc. Regex replace " s/\n//g " does not work because sed regex works on a single line. More tips from this Linux blog: http://linux.dsplabs.com.au/rmnl-remove-new-line-characters-tr-awk-perl-sed-c-cpp-bash-python-xargs-ghc-ghci-haskell-sam-ssam-p65/
Created by woolf on May 20, 2011 13:46:04    Last update: May 20, 2011 13:46:04
The Unix utility can convert a binary stream to hex and reverse it. The -p (or -ps ) switch means "plain", or "postscript" mode. $ cat >test.txt Line one Line two Line th...
Created by Dr. Xi on March 28, 2011 11:11:33    Last update: March 28, 2011 11:13:21
grep is a versatile command with many variations (grep, egrep, fgrep, then various implementations). It uses a regula expression (regex) pattern to filter input. But then there are basic and extended flavors of regex - leading to even more confusion. And, beware that there are lots of bad examples of regex in the wild... There are two critical questions to ask when you use grep: which grep implementation are you using? what is the flavor of the regex? Here are some examples for gnu grep v2.7: # Find all numbers (no decimal point), basic regex... Use the -o flag to show only the matching part instead of the whole matching line: grep -o -E '\b[0-9]{2}\b' The good thing about the gnu grep is that it...
Created by Dr. Xi on February 28, 2011 12:29:19    Last update: February 28, 2011 12:30:40
The Unix shell passes these parameters to the shell script: Variable Meaning $* A single string representing all command line arguments separated by $IFS (internal field separator, usually a space) $@ A sequence of strings representing the command line arguments. $1,$2...$n $1 is the first argument, $2 is the second argument, and so on... $0 The name of the script itself. $# The number of arguments. Example shell script ( sharg.sh ): #!/bin/sh echo $# arguments passed to $0: $@ ... Output for ./sharg.sh "a b c d" : 1 arguments passed to ./sharg.sh: a b c d here ... Output for ./sharg.sh a "b c" d : 3 arguments passed to ./sharg.sh: a b c d here ...
Created by voodoo on June 17, 2010 15:23:02    Last update: June 17, 2010 15:35:40
Use useradd to add a user (the switches are not required, but it's a good idea to give them. For example, without -m you'd create a user without a home directory): # -d switch specifies user home directory # -m ... You also need to use the passwd command to set a new password before the user can log in. To delete a user, use the userdel command: userdel demo
Created by Dr. Xi on December 04, 2009 04:33:05    Last update: December 04, 2009 04:33:05
Variable Meaning $_ The default or implicit variable. @_ Within a subroutine the array @_ contains the parameters passed to that subroutine. $a, $b Special package variables when using sort() $<digit> Contains the subpattern from the corresponding set of capturing parentheses from the last pattern match, not counting patterns matched in nested blocks that have been exited already. $. Current line number for the last filehandle accessed. $/ The input record separator, newline by default. $| If set to nonzero, forces a flush right away and after every write or print on the currently selected output channel. Default is 0 (regardless of whether the channel is really buffered by the system or not; $| tells you only whether you've asked Perl explicitly to flush after...
Created by Dr. Xi on June 12, 2007 02:13:50    Last update: December 06, 2008 18:20:50
The UNIX command xargs passes stdin to the command line. For example, to edit all files containing the word escape : grep -l escape * | xargs gvim
Created by Dr. Xi on October 06, 2008 23:27:38    Last update: October 06, 2008 23:27:38
On Solaris or AIX, use truss . On Linux use strace . # trace the ls command strace ls # c... Some links: Unix process tracing patterns Debugging Unix processes: A Detective Story AIX 5.2 performance tools update, Part 2
Previous  1 2 Next