注:平时工作过程中收集的一些有用的shell函数和别名,并非原创
1、备份文件
function backup()
{
if [[ -z "$1" ]];then
echo "Usage: backup filename"
return
fi
cp -rvf "$1" "$1_bak"
}
2、交换文件
function swapfile()
{
if [[ $# -lt 2 ]];then
echo "Usage: swapfile file1 file2"
return
fi
local TMPFILE=tmp.$$
mv "$1" $TMPFILE
mv "$2" "$1"
mv $TMPFILE "$2"
}
3、解压缩
function untar(){
if [ -z "$1" ];then
echo "Usage: extract file"
return
fi
if [ -f "$1" ]; then
case "$1" in
*.tar) tar -xvf $1 ;;
*.tar.gz) tar -xvzf $1 ;;
*.tgz) tar -xvzf $1 ;;
*.tar.bz2) tar -xvjf $1 ;;
*.tbz2) tar -xvjf $1 ;;
*.tar.xz) tar -xvJf $1 ;;
*.txz) tar -xvJf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) gunzip $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extarct via extract()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}
4、删除大文件夹
function rmbigfold(){
mkdir /tmp/blank
rsync --delete-before -a -H -v --progress --stats /tmp/blank/ $1
rm -rvf $1
}
alias mirror_site='wget -r -p -np -k'
alias websiteget='wget --random-wait -r -p -e robots=off -U mozilla'
6、DOS UNIX互转
alias dos2unix='fromdos'
alias unix2dos='todos'
7、格式化文本
alias astyle='astyle --style=linux -s4 -c -s -p -U -n'
alias trim_file='sed -i "s/[ \t]*$//"'