updatedb script for Cygwin

#!/bin/bash

updatedb --prunepaths='
/proc /cygdrive/c/program_disk/cygwin
/cygdrive/c/Documents.and.Settings/[^/]*/Local.Settings/Temp
/cygdrive/c/Program.Files
/cygdrive/c/ProgramData
/cygdrive/c/Windows
/cygdrive/[^/]*/System.Volume.Information
/cygdrive/c/$Recycle.Bin
/home/hongyu.zhang/dumpster
'
‚Äč

A safe program to replace unix command ‘rm’

#!/usr/bin/perl -w

## A safer program to replace unix command "rm"
## Author: Hongyu Zhang

if($#ARGV < 0) {
    die("Usage:  $0 filename\n");
}

$dir = `echo ~/dumpster`;
chomp $dir;
mkdir $dir unless(-d $dir);

for($i=0; $i<=$#ARGV; $i++) {
    croak("Directory $ARGV[$i] not existed") unless(-e $ARGV[$i]);
    my @arr = split /\//, $ARGV[$i];
    if(-e "$dir/$arr[$#arr]") {
        $command = "rm -rf $dir/$arr[$#arr]";
        system("$command");
        croak("error running command: $command") if($?);
    }

    $command = "mv -fv $ARGV[$i] $dir";
    system("$command");
    croak("error running command: $command") if($?);
}

My common .bashrc setup

alias vi='vim'
alias mv='mv -i'
alias cp='cp -i'
alias rm='rm -i'
alias h='history | tail -200'
alias ls='ls -CF --color '
alias ll='/bin/ls -lFat --color '
alias lh='/bin/ls -lFth --color '
alias l="/bin/ls -lF --color "
alias lt="/bin/ls -lFt --color "
alias new='/bin/ls -lt | head -10'
alias loc='find . -name '
alias lo=exit
alias m=more
alias s=source
alias cl=clear
alias ldir='ls -lt | grep "^d" |more'
alias dir=l
alias p=pine
alias grep='grep -i --color'
alias myps="ps -ef | grep $WHOAMI"

#Cygwin only
alias ping='$SYSTEMROOT/system32/ping'

export CDPATH=.:~:~/work

## set for perl environment
export PERL5LIB=/home/hzhang/tools/perllib:/home/hzhang/tools/perllib1