use File::Spec::Functions 'curdir';
my $startperl = "#! $perlpath -w";
-#
-# Modified September 26, 1993 to provide proper handling of years after 1999
-# Tom Link <tml+@pitt.edu>
-# University of Pittsburgh
-#
-# Modified April 7, 1998 with nasty hacks to implement the troublesome -follow
-# Billy Constantine <wdconsta@cs.adelaide.edu.au> <billy@smug.adelaide.edu.au>
-# University of Adelaide, Adelaide, South Australia
-#
-# Modified 1999-06-10, 1999-07-07 to migrate to cleaner perl5 usage
-# Ken Pizzini <ken@halcyon.com>
-#
-# Modified 2000-01-28 to use the 'follow' option of File::Find
-
sub tab ();
sub n ($$);
sub fileglob_to_re ($);
} elsif ($_ eq '!') {
$out .= tab . "!";
next;
- } elsif ($_ eq 'name') {
- $out .= tab . '/' . fileglob_to_re(shift) . "/s";
+ } elsif (/^(i)?name$/) {
+ $out .= tab . '/' . fileglob_to_re(shift) . "/s$1";
+ } elsif (/^(i)?path$/) {
+ $out .= tab . '$File::Find::name =~ /' . fileglob_to_re(shift) . "/s$1";
} elsif ($_ eq 'perm') {
my $onum = shift;
$onum =~ /^-?[0-7]+$/
my $prog = shift;
$prog =~ s/'/\\'/g;
$out .= tab . "eval {$prog}";
+ $print_needed = 0;
} elsif ($_ eq 'depth') {
$find = 'finddepth';
next;
}
if ($print_needed) {
- $out .= "\n" . tab . '&& print("$name\n")';
+ my $t = tab;
+ if ($t !~ /&&\s*$/) { $t .= '&& ' }
+ $out .= "\n" . $t . 'print("$name\n")';
}
END
+if (exists $init{doexec}) {
+ print <<'END';
+use Cwd ();
+my $cwd = Cwd::cwd();
+
+END
+}
+
if (exists $init{ls}) {
print <<'END';
my @rwx = qw(--- --x -w- -wx r-- r-x rw- rwx);
if (exists $init{doexec}) {
print <<'END';
-use Cwd ();
-my $cwd = Cwd::cwd();
-
sub doexec ($@) {
my $ok = shift;
my @command = @_; # copy so we don't try to s/// aliases to constants
quoted to avoid interpretation by the shell (just as with using
C<find(1)>).
+=item C<-iname GLOB>
+
+Like C<-name>, but the match is case insensitive.
+
+=item C<-path GLOB>
+
+Path name matches specified GLOB wildcard pattern.
+
+=item C<-ipath GLOB>
+
+Like C<-path>, but the match is case insensitive.
+
=item C<-perm PERM>
Low-order 9 bits of permission match octal value PERM.
True if file's size matches N (see below) N is normally counted in
512-byte blocks, but a suffix of "c" specifies that size should be
-counted in characters (bytes) and a suffix of "k" specifes that
+counted in characters (bytes) and a suffix of "k" specifies that
size should be counted in 1024-byte blocks.
=item C<-atime N>
=head1 SEE ALSO
-find
+find, File::Find.
=cut
!NO!SUBS!