IN="$(mktemp --suffix .HC)" OUT="$(mktemp)" cat > "$IN" LOG="$(hcc $IN 2>&1)" if [ $? -eq 0 ]; then OUT="$(mktemp)" mv ./a.out "$OUT" chmod +x "$OUT" exec "$OUT" else echo "$LOG" fi