Re: bash pathname expansion
On Sun, Jun 25, 2006 at 11:10:27PM +0400, Stanislav Maslovski wrote:
> Доброго времени суток,
>
> Имеем:
> 1) GNU bash, version 2.05b.0(1)-release (i386-pc-linux-gnu)
> 2) вот такое дерево директорий и файлов
> .
> |-- A \
> |-- B | <- директории
> |-- C |
> |-- D /
> |-- a \
> |-- b | <- файлы
> |-- c |
> `-- d /
>
> 4 directories, 4 files
>
> $ echo *
> a A b B c C d D
>
> $ echo [abcd]
> a b c d
>
> $ echo [ABCD]
> A B C D
>
> А вот сюрприз:
> $ echo [a-d]
> a A b B c C d
>
> $ echo [A-D]
> A b B c C d D
>
> Это я что-то не понимаю, или это глюк шелла? Кстати, тот факт, что A B C D -
> это директории, не важен. Просто исторически глюк у меня вылез в подобной
> конфигурации.
>
> В zsh все работает, как ожидается.
Сам себе отвечаю. Почитал более внимательно маны. Там говорится буквально
следующее:
... Note that when using range expressions like [a-z]
(see below), letters of the other case may be included, depending on
the setting of LC_COLLATE...
... The sorting order of characters in range expressions is determined by the
current locale and the value of the LC_COLLATE shell variable, if set...
--
Станислав
Reply to: