Moin,

* Elmar W. Tischhauser wrote (2004-02-01 16:05):
>On 01 Feb 2004 at 15:01 +0100, Thorsten Haude wrote:
>> * Elmar W. Tischhauser wrote (2004-02-01 14:43):
>> >Wie Andreas dir schon erkl�rt hat, wird da nichts "gemischt", sondern
>> >lediglich das ganz normale Globbing verwendet. Siehe dazu zum Beispiel
>> >auch 'man bash', Stichwort "Pattern Matching".
>
>> Siehe dazu auch Posix, wo das f�r Fileglobbing ausdr�cklich
>> ausgenommen ist. Diese Art der Zeichenklassen ist regexisch.
>
>Wenn du damit meinst, dass glob(7) nur [!abc], aber nicht [^abc]
>spezifiziert, hast du Recht. 

Davon spreche ich die ganze Zeit: Das Mischen von Regexen und Globs.


>Allerdings reden wir hier (der OP wollte ja Dateien l�schen) von
>konkretem Pattern Matching in konkreten Shells

Das wichtige ist da glaube ich 'r�bergekommen: Immer sch�n vorsichtig
sein, wenn man rm mit irgendwelchen Patterns mischt!


>die bash akzeptiert explizit beide Formen:

...und unterst�tzt damit etwas, was laut Posix ausdr�cklich
undefiniert ist. Das mu� mir nicht gefallen.

(Meine Zsh auch. Ich werd's mal in der Mailingliste ansprechen.)


>Wenn ich mich richtig erinnere, fordert die (t)csh sogar die Verwendung
>von ^, f�r eine reine Bourne-Shell d�rfte wiederum ! das Richtige sein.

Whatever. Posix sollte man nicht so einfach ignorieren.


>Welche Muster der OP also einsetzen kann, h�ngt von der von ihm
>verwendeten Shell ab. Und bei einer bash kann man [^.] durchaus
>verwenden, ohne sich undefiniertes Verhalten einzufangen.

Man hat also bei der Benutzung von negativen Zeichenklassen die Wahl:
Entweder es ist im Widerspruch zu Posix ein definierter Teil von
Fileglobs oder man ignoriert Posix und mischt Globs und Regexe.
Welches von beiden trifft zu?


Thorsten
-- 
Guns don't protect freedom, people protect freedom.

Attachment: pgp00000.pgp
Description: PGP signature

Antwort per Email an