[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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 -
> это директории, не важен. Просто исторически глюк у меня вылез в подобной
> конфигурации.

Порядок сортировки сильно зависит от локали:

$ LANG=C bash -c "ls [a-d]"
a  b  c  d
$ LANG=ru_RU.UTF-8 bash -c "ls [a-d]"
a  A  b  B  c  C  d

В некоторых локалях, например, буква z расположена посреди алфавита, в
некоторых - заглавная буква к i не есть I.



Reply to: