Shell

From dankwiki

IFS

To set IFS to newline, use IFS=$'\n'. This allows find output containing horizontal whitespace to be picked up and used in e.g. for loop.

  • If you can use the output with xargs, then just use find's -print0 predicate and xargs's -0 option.

Redirects

  • stderr to pipe, without stdout: 2>&1 >/dev/null |

Useful functions

isnumber() {
  case "$1" in
    ''|*[!0-9]*) echo "not a number: $1" >&2 ; return 1 ; ;;
    *) return 0
  esac
}