: ${TMPDIR:=/tmp} TESTDIR=$TMPDIR/glob-test-$$ mkdir $TESTDIR || { echo "$TESTDIR: cannot create" >&2 exit 1 } cd $TESTDIR || { echo "$TESTDIR: cannot cd" >&2 exit 1 } LC_CTYPE=C LC_COLLATE=C shopt -s extglob dotglob shopt -u globskipdots # XXX - backwards compatibility touch .foo bar .a echo dotglob: .a .foo bar echo '@(.foo)' echo @(.foo) echo '!(.foo)' echo !(.foo) echo '@(.foo|*)' echo @(.foo|*) echo '!(.foo|*)' echo !(.foo|*) echo '@(*)' echo @(*) echo '!(*)' echo !(*) echo '.*' echo .* echo '@(.*)' echo @(.*) echo '!(.*)' echo !(.*) shopt -u dotglob echo no dotglob: .a .foo bar echo '@(.foo)' echo @(.foo) echo '!(.foo)' echo !(.foo) echo '@(.foo|*)' echo @(.foo|*) echo '!(.foo|*)' echo !(.foo|*) echo '!(bar).foo' echo !(bar).foo echo '*(bar).foo' echo *(bar).foo echo '?(bar).foo' echo ?(bar).foo echo '.?' echo .? echo '@(.?)' echo @(.?) echo '!(.?)' echo !(.?) shopt -s dotglob echo dotglob: .a .foo bar echo '@(?|.?)' echo @(?|.?) echo '@(?|.*)' echo @(?|.*) echo '? .*' echo ? .* echo '*' echo * shopt -u dotglob echo no dotglob: .a .foo bar echo '@(?|.?)' echo @(?|.?) echo '@(?|.*)' echo @(?|.*) echo '? .*' echo ? .* echo '*' echo * rm -f .a bar .foo cd $OLDPWD rm -rf $TESTDIR