mirror of https://github.com/n-hys/bash.git
98 lines
1.4 KiB
Plaintext
98 lines
1.4 KiB
Plaintext
# This program is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
olddir=$PWD
|
|
: ${TMPDIR:=/var/tmp}
|
|
EMPTY=$TMPDIR/empty
|
|
|
|
shopt -s globstar
|
|
s()
|
|
{
|
|
printf '== <%s> ==\n' "$@"
|
|
}
|
|
p()
|
|
{
|
|
printf '<%q>\n' "$@"
|
|
}
|
|
|
|
mkdir -p $EMPTY/a/a/a
|
|
cd $EMPTY
|
|
|
|
# good
|
|
p **
|
|
p **/**
|
|
p **/**/**
|
|
|
|
rm -rf a
|
|
mkdir -p $EMPTY/{a,b}/{a,b}/{a,b}/{a,b}
|
|
cd $EMPTY
|
|
|
|
# good
|
|
s '**/a'
|
|
p **/a
|
|
|
|
# good
|
|
s 'a/**'
|
|
p a/**
|
|
|
|
# good
|
|
s '**'
|
|
p **
|
|
|
|
# good
|
|
s '**/**'
|
|
p **/**
|
|
|
|
# good
|
|
s '**/**/**'
|
|
p **/**/**
|
|
|
|
# good
|
|
s '**/**/**/**/**'
|
|
p **/**/**/**/**
|
|
|
|
# good
|
|
s '**/**/a'
|
|
p **/**/a
|
|
|
|
# good
|
|
s 'a/**/**'
|
|
p a/**/**
|
|
|
|
# good
|
|
s 'a/**/**/**'
|
|
p a/**/**/**
|
|
|
|
# good
|
|
s 'a/**/**/**/**'
|
|
p a/**/**/**/**
|
|
|
|
# same as ksh93
|
|
s '**/a/**'
|
|
p **/a/**
|
|
|
|
# same as ksh93
|
|
s '**/a/**/**'
|
|
p **/a/**/**
|
|
|
|
# same as ksh93
|
|
s '**/a/**/**/**'
|
|
p **/a/**/**/**
|
|
|
|
# good
|
|
s '**/**/a/**'
|
|
p **/**/a/**
|
|
|
|
cd "$olddir"
|
|
rm -rf $EMPTY
|