Как проверить версию rm для GNU или BSD?

Версия GNU rm имеет крутой флаг -I. Из справочной страницы:

-I     prompt once before removing more than three files, or when removing recursively.   Less
          intrusive than -i, while still giving protection against most mistakes

На Mac нет:

$ rm -I scratch
rm: illegal option -- I
usage: rm [-f | -i] [-dPRrvW] file ...
   unlink file

Иногда люди устанавливают coreutils (версия GNU) на Mac, а иногда нет. Есть ли способ обнаружить этот флаг командной строки, прежде чем продолжить? Я хотел бы иметь что-то вроде этого в моем bash_profile:

if [ has_gnu_rm_version ]; then
    alias rm="rm -I"
fi
5
задан Telemachus 26 July 2011 в 19:48
поделиться