GNU/Linux >> Znalost Linux >  >> Linux

Ignorujte malá a velká písmena v glob() na Linuxu

Každý abecední znak c můžete nahradit [cC] pomocí

import glob
def insensitive_glob(pattern):
    def either(c):
        return '[%s%s]' % (c.lower(), c.upper()) if c.isalpha() else c
    return glob.glob(''.join(map(either, pattern)))

Místo vzorů glob používejte regulární výrazy bez ohledu na velikost písmen. fnmatch.translate generuje regulární výraz ze vzoru glob, takže

re.compile(fnmatch.translate(pattern), re.IGNORECASE)

vám poskytne verzi vzoru glob bez ohledu na velikost písmen jako kompilovaný RE.

Mějte na paměti, že pokud je souborový systém hostován linuxovým boxem na souborovém systému podobnému Unixu, uživatelé budou moci vytvářet soubory foo , Foo a FOO ve stejném adresáři.


Linux
  1. Linuxový příkaz mv

  2. Linux du command

  3. Linuxový ip příkaz

  1. Linux cd příkaz

  2. linux bash, řetězec velbloudího pouzdra k oddělení pomlčkou

  3. Linux:Souborový systém INSENSITIVE pro malá a velká písmena

  1. 4 alternativy cronu v Linuxu

  2. Sbohem, Linux Journal

  3. Co je uživatel Linuxu?