分享一些 shell 函数和 alias

省略掉公司内部用的一些东西。其中的calc()和isdigit()是从网上抄来的。:-) 希望对你有用。

[bash]
alias gts=”git send-email —cc-cmd=’./scripts/get_maintainer.pl —norolestats’ —to linux-kernel@vger.kernel.org —smtp-server XXXX”
alias v=”vim -O”
alias e=”emacs -q -nw”
alias wpas=”wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -B”
alias mutt=”LC_ALL=zh_CN.UTF-8 mutt”
alias wget=”wget —no-check-certificate”

function calc () { awk “BEGIN{ print $* }” ;}

function isdigit ()
{
[ $# -eq 1 ] || return 1;

case $1 in
[!0-9]|””) return 1;;
*) return 0;;
esac
}

function errno ()
{
if [ “$#” -eq 0 ]
then
echo “Usage: errno [ERRNO | N]”
return 1
fi
pattern=$1
if isdigit “$pattern”
then
msg=”$(awk ‘$3~// {print $0}’ /usr/include/asm-generic/errno-base.h /usr/include/asm-generic/errno.h)”
else
msg=”$(awk ‘$2~// {print $0}’ /usr/include/asm-generic/errno-base.h /usr/include/asm-generic/errno.h)”
fi

if [ -z "$msg" ]
then
    echo "BAD ERRNO!"
else
    echo "$(echo "$msg" | sed -e 's#.*/* (.*) */#1#g')"
fi

}

function kcgrep ()
{
local dest
local str
if [ -z $2 ]
then
dest=”.”
else
dest=”$2”
fi
str=$(echo “$1” | sed -e ‘s/^CONFIG_//‘)
find “$dest” -iname ‘kconfig*’ -exec grep “$str” -nwH ‘{}’ ;
}
[/bash]