[comp.os.os2.misc] Question with forall

rommel@Informatik.TU-Muenchen.DE (Kai-Uwe Rommel) (02/07/91)

In article <23102@ttidca.TTI.COM> terence@ttidca.TTI.COM (Terence Davis) writes:
>select each file, pass it through sed (a port by Kai) to make the changes
>and rewrite the file with the same name.  Unfortunately, the files had no
>extension.  I tried
>	forall -R *
>	forall -R *.
>	forall -R *.[]
>and some others but none worked.  The -R is recursive down subdirectories.
>Each variation gave me either no files or all the files in each directory.

FORALL uses a PD file name matching routine which closely resembles the
Unix cmd line expandsion done by sh etc (with the extension of
{x,y,..}). With the Unix filename expansion, there is no way to specify
a pattern which matches all files that do NOT contain any dot but no
other file, this would require true regular expressions.

I consider to add regexp. to this program or at least add a -v switch
like grep has to cause FORALL to work on those files NOT matching the
pattern(s) which would allow you to use "FORALL -v *.* : ..." to work
on all files not containing a dot in their name.

(Unfortunately, the PD filename matching routine had a bug which caused
to fail [^abc] etc, i.e. inverted character groups. I will fix this too.)

If there is interest, I could then submit this new version to
comp.binaries.os2 when I finished it.

Kai Uwe Rommel