Mit "wildcards" zum ausschließen von Dateien mit einem bestimmten suffix

Ich bin das Experimentieren mit wildcards in der bash und versucht, die Liste alle Dateien, die beginnen mit "xyz", aber endet nicht mit ".TXT" aber immer falsche Ergebnisse.

Hier ist der Befehl, dass ich versucht:

$ ls -l xyz*[!\.TXT]

Es ist nicht das auflisten der Dateien mit Namen "xyz" und "xyzTXT", dass ich in meinem Verzeichnis. Allerdings Listen "xyz1", "xyz123".

Scheint es wie das hinzufügen von [!\.TXT] nach "xyz*" aus der shell suchen Sie nach etwas, die beginnen mit "xyz" und hat mindestens ein Charakter nach dem es.

Irgendwelche Ideen, warum es geschieht und wie man richtig mit diesem Befehl? Ich weiß, dass es erreicht werden kann, mit anderen Befehlen, aber ich bin vor allem daran interessiert zu wissen, warum es nicht und wenn es kann getan werden einfach Nutzung von wildcards.

Schreibe einen Kommentar