Regexes veya bash komut dosyası değil - sadece dosya adı globbing kullanmanız gerekir - bu yüzden fail2ban hapishane için dosya adlarını eşleştirmeye çalışıyorum.
Benim /var/log/apache2dizin dosyaları da dahil olmak içerir:
example.com.error.log
db.example.com.error.log
app1.example.com.error.log
app2.example.com.error.log
.error.log Dışında biten tüm dosyaları eşleştirmek için bir glob oluşturmaya çalışıyorum db.example.error.log- bu mümkün mü?
Denedim !(db)*.error.logama bu hala aynı db.example.com.error.log. Dosya adının başından eşleşmesine !()izin veren hiçbir karakter *eşleşmediğini tahmin ediyorum .
Not: Yeni appXgünlük dosyaları eklendiğinde glob'u genişletmek istemiyorum , bu yüzden @()şu anda bilinen db olmayan dosya adları listesiyle birlikte kullanamıyorum .
(Arka plan: db.example.com dışında herhangi bir alanda phpMyAdmin URL'si isteyen herkesi yasaklayan bir filtre oluşturmak istiyorum )