Recent Notes
Displaying keyword search results 1 - 10
Created by voodoo on February 16, 2012 14:56:44
Last update: February 16, 2012 15:52:56
Shell functions are declared using this syntax:
[ function ] name () compound-command [ redirectio...
Example:
function ll {
ls -alF $*
}
Example 2:
ll() {
ls -alF $*
}
Shell functions can be exported to subshells with the -f switch:
$ export -f ll
However , I had problems logging in Ubuntu 11.10 after I added this to .profile :
export -f ll
Created by voodoo on January 03, 2012 08:41:21
Last update: February 16, 2012 15:50:06
This is the command to print all regular files in the src folder but excluding all files within the .svn folders:
$ find src -name .svn -prune -o -type f -print
where -o is the or operator.
Define a shortcut:
ff ()
{
find $1 -name .svn -prune -o -...
Created by timo on January 25, 2012 20:13:13
Last update: January 25, 2012 20:13:13
The MIPS CPU is able to run both big-endian and little-endian. So a system built on MIPS can be either big-endian (mips) or little-endian (mipsel).
The file command shows the architecture:
$ file ls
ls: ELF 32-bit LSB executable, MIPS, ...
but readelf will tell the endianness:
$ readelf -h ls
ELF Header:
Magic: 7f 45...
Created by woolf on September 08, 2011 11:19:52
Last update: September 08, 2011 11:19:52
To check a command exists on PATH:
Use the return code of which :
which some_command &>/dev/null
[ $? -eq 0 ] || ...
For bash, use type -P :
type -P some_command &>/dev/null && echo "ome_comm...
or
check_path() {
if ! type -P $1 &> /dev/...
Created by Dr. Xi on February 17, 2011 12:34:58
Last update: August 10, 2011 09:04:32
String comparison operators: Operator Meaning -n str the length of str is nonzero. -z str the length of str is zero (0). str1 = str2 str1 and str2 are the same (note one equal sign, not two!). str1 != str2 str1 and str2 are not the same. str str is not a null string Examples:
# empty string is not null if [ '' ]; then ... Numerical comparisons ( integer expressions only! ): Operator Meaning int1 -eq int2 int1 and int2 are numerically equal int1 -ne int2 int1 and int2 are numerically NOT equal int1 -gt int2 int1 is greater than int2 int1 -ge int2 int1 is greater than or equal to int2 int1 -lt int2 int1 is less than int2 int1 -le...
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 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 Dr. Xi on February 17, 2011 14:06:22
Last update: February 17, 2011 14:06:22
This is the crontab to run a cron job every 15 minutes:
*/15 * * * * /path/to/executable >/redirect/output...
or,
0,15,30,45 * * * * /path/to/executable >/redirect/...
In general, the format is:
minute hour day_of_month month day_of_week command
Valid values are:
Field Value
minute 0-59
hour 0-23
day of month 1-31
month 1-12
day of week 0-6 (Sunday = 0)
Reference: crontab(5) - Linux man page
Created by magnum on June 23, 2010 20:42:12
Last update: June 23, 2010 20:52:33
Compile mod_proxy_html from source code.
Prerequisite: Apache httpd installed on system with header files.
Command:
# /usr/local/apache2/bin/apxs -i -c -I/usr/local/i...
Output:
/usr/local/apache2/build/libtool --silent --mode=c...