On Thu, Aug 05, 2010 at 10:09:38AM +0000, Dimitar DIMITROV wrote: > The extended glob pattern @(?|??|???|????)*([[:space:]]):*([[:space:]]) > is not respected when used for the HISTIGNORE environment variable: > > export HISTIGNORE='@(?|??|???|????)*([[:space:]]):*([[:space:]])'
This issue came up in IRC. I was able to duplicate the problem with a much simpler case. This works as expected: imadev:~$ shopt -s extglob imadev:~$ HISTIGNORE='a*( )' imadev:~$ a <-- I typed two spaces at the end bash: a: command not found imadev:~$ history | tail -3 1273 shopt -s extglob 1274 HISTIGNORE='a*( )' 1275 history | tail -3 This fails: imadev:~$ HISTIGNORE='a*([[:space:]])' imadev:~$ a <-- again, I typed two spaces at the end bash: a: command not found imadev:~$ history | tail -3 1276 HISTIGNORE='a*([[:space:]])' 1277 a 1278 history | tail -3 Background: apparently he is in the habit of typing "curl" or "curl " a lot, and wants them not to appear in his history. So he was trying to set HISTIGNORE='@(wget|curl)*([[:space:]])' and it was not working as expected.