GNU/Linux >> Belajar Linux >  >> Linux

Abaikan huruf besar-kecil di glob() di Linux

Anda dapat mengganti setiap karakter abjad c dengan [cC], melalui

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)))

Gunakan regex yang tidak peka huruf besar-kecil alih-alih pola glob. fnmatch.translate menghasilkan regex dari pola glob, jadi

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

memberi Anda versi case-sensitive dari pola glob sebagai RE yang dikompilasi.

Perlu diingat bahwa, jika sistem file dihosting oleh kotak Linux pada sistem file mirip Unix, pengguna akan dapat membuat file foo , Foo dan FOO di direktori yang sama.


Linux
  1. Linux + Bagaimana Cara Mengabaikan (filter) File Dengan Spasi?

  2. Bola Rekursif?

  3. Linux – Apakah Kernel Linux/unix yang Berbeda Dapat Dipertukarkan?

  1. Perintah mv Linux

  2. Linux du perintah

  3. Perintah ip Linux

  1. 4 alternatif untuk cron di Linux

  2. Perintah cd Linux

  3. Nama tabel sensitif huruf MySQL di Linux