Shell tricks I can never remember

Recursive grep that works:

find . -type f -exec grep "mysearch" /dev/null {} \;

Too many files:

for i in `ls`; do rm $i; done

Split string:

#!/bin/sh

IFS=:
for dir in $PATH; do
  if [ -x $dir/gcc ];then
    GCC=$dir/gcc;
    break;
  fi
done

Find and replace in multiple files:

perl -pi -e "s/find/replace/g" file1 file2 ...

Cool prompt

# cool prompt
if type -p printf > /dev/null 2>&1; then
  red=$(printf '\e[31m')
  colors="\[\e[0;36m\]\w\[\e[01m\]\[\e[0m\]"
  export PS1="${NAME}:${colors}$([ $? -eq 0 ]||printf $red)\$\[\e[0m\] "
else
  export PS1='\[\e[0;36m\]\w\[\e[01m\]\[\e[0m\]\$\[\e[0m\] \$'
fi