również standardowe wzorce (proste) glob, atakujących ≥4.0 jest przedłużony globowania. Jest to
. Aby go włączyć, użyj: shopt -s extglob
Dzięki extglob
masz dostęp do rozszerzonych wzorów regularnych wyrażeń, jak również standardowych wzorów. Ponadto w swojej konkretnej sytuacji możesz jeszcze bardziej dostosować zachowanie globu, włączając opcję case insensitive glob, która jest domyślnie wyłączona. Aby go włączyć, użyj: shopt -s nocaseglob
Włączenie extglob
nie zmienia sposobu działania standardowych globów. Możesz mieszać te dwa formularze. Jedynym problemem jest to, że musisz zdawać sobie sprawę ze specjalnej rozszerzonej składni regex. Na przykład w poniższym przykładzie jedyną jego częścią, która jest rozszerzonym wyrażeniem regularnym, jest ?(e)
. Reszta to standardowa ekspansja globalna z włączoną niewrażliwością na wielkość liter.
Rozszerzony-regex, wielkość liter glob w danej sytuacji jest:
shopt -s extglob nocaseglob
ls -l *.jp?(e)g
można znaleźć więcej informacji i przykładów w: Bash Extended Globbing.
Bardzo dziękuję, właśnie tego szukałem :) – Elliot