Hallo! On 01 Feb 2004 at 15:01 +0100, Thorsten Haude wrote:
> * Elmar W. Tischhauser wrote (2004-02-01 14:43): > >On 01 Feb 2004 at 01:48 +0100, Thorsten Haude wrote: > >> * Andreas Metzler wrote (2004-02-01 00:32): > >> >Thorsten Haude <[EMAIL PROTECTED]> wrote: > >> >> * Elmar W. Tischhauser wrote (2004-01-31 12:56): > >> > > >> >>>'.[^.]*' ist pr�ziser und damit weniger gef�hrlich. > >> > > >> >> Ich wei� nicht. Ich bin �berrascht, das die Shell �berhaupt Regexe > >> >> kann, wenn man die mit Fileglobs mischt, kann es sicher schnell > >> >> sportlich werden. > >> > > >> >Das ist keine regex sondern Globbing, eben "Punkt, ein nicht-Punkt, > >> >beliebig viele (0 oder mehr) beliebige Zeichen" und nicht "beliebiges > >> >Zeichen, nicht-Punkt beliebig oft (0 oder mehr)". > > > >> Nee, das ist schon eine Zeichenklasse wie man sie aus Regexen kennt, > >> also wird gemischt, also schlecht. > > > >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. Allerdings reden wir hier (der OP wollte ja Dateien l�schen) von konkretem Pattern Matching in konkreten Shells; die bash akzeptiert explizit beide Formen: ,-----[ man bash, EXPANSION, Pattern Matching ] | If the first character following the [ is a ! or a ^ then any | character not enclosed is matched. `---------------------------------------------- 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. 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. > Ich benutze solche Muster f�r rm nicht, ohne sie vorher mit einem ls > zu testen. Oder mit echo, genau. Ich bin da auch gerne vorsichtig. Vor allem, wenn man das Muster in ein Skript �bernimmt und sich dann sp�ter blind darauf verl�sst :-) Gru�, Elmar -- [ GnuPG: D8A88C0D / 2407 063C 1C92 90E9 4766 B170 5E95 0D7F D8A8 8C0D ] ����������������������������������������������������������������������� Sicher ist, dass nichts sicher ist. Selbst das nicht. -- Ringelnatz
pgp00000.pgp
Description: PGP signature

