Est-ce que grep fonctionne différemment sur OSX?

Je suis en train d'utiliser grep comme je suis habitué de Linux, avec toutes ses caractéristiques étonnantes et toute la puissance de RegEx,... mais sur Mac OS X, il ne fonctionne pas comme prévu.

Si j'utilise "-P" (expression rationnelle Perl) il me donne l' "utilisation" (--help) de sortie.
Là, nous trouvons le "-P" paramètre dans la liste des paramètres "-abcDEFGHhIiJLlmnOoPqRSsUVvwxZ"...
Toujours pas de travail.

Un autre exemple est l'astérisque ou le signe plus.
Je suis en train d'essayer cette http://wiki.bash-hackers.org/howto/conffile

Pour vérifier un fichier de config pour contenu inapproprié que l'instruction utilise:

if egrep -q -v '^#|^[^ ]*=[^;]*' "$configfile"; then
  echo "Config file is unclean, cleaning it..." >&2
  # filter the original to a new file
  egrep '^#|^[^ ]*=[^;&]*'  "$configfile" > "$configfile_secured"
  configfile="$configfile_secured"
fi

Et il ne fonctionne pas sur les lignes comme ceci:

DATABASE=some_database; ls -la

Ce que je fais mal?
Tous cela fonctionne bien sur les machines Linux.

source d'informationauteur func0der