Case-insensitive Glob on zsh/bash

I need to list all files whose names start with 'SomeLongString'. But the case of 'SomeLongString' can vary. How?

I am using zsh, but a bash solution is also welcome.

Answers


ZSH:

$ unsetopt CASE_GLOB

Or, if you don't want to enable case-insensitive globbing in general, you can activate it for only the varying part:

$ print -l (#i)(somelongstring)*

This will match any file that starts with "somelongstring" (in any combination of lower/upper case). The case-insensitive flag applies for everything between the parentheses and can be used multiple times. Read the manual zshexpn(1) for more information.

UPDATE Almost forgot, you have to enable extendend globbing for this to work:

setopt extendedglob

bash:

shopt -s nocaseglob

Need Your Help

Complete x86/x64 JIT Assembler for C Language

assembly jit

Do you know something just like this, but embeddable in a C program?

Python selecting mutiple ranges with numpy\pandas

python numpy pandas range

Is there anyway to select multiple ranges in numpy arrays or pandas dataframe efficiently all in one go?