diff options
Diffstat (limited to 'gnu/usr.bin/perl/eg/findtar')
-rw-r--r-- | gnu/usr.bin/perl/eg/findtar | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gnu/usr.bin/perl/eg/findtar b/gnu/usr.bin/perl/eg/findtar new file mode 100644 index 0000000..a60f10f --- /dev/null +++ b/gnu/usr.bin/perl/eg/findtar @@ -0,0 +1,17 @@ +#!/usr/bin/perl + +# $Header: /home/cvs/386BSD/ports/lang/perl/eg/findtar,v 1.1.1.1 1993/08/23 21:29:43 nate Exp $ + +# findtar takes find-style arguments and spits out a tarfile on stdout. +# It won't work unless your find supports -ls and your tar the I flag. + +$args = join(' ',@ARGV); +open(find,"/usr/bin/find $args -ls |") || die "Can't run find for you."; + +open(tar,"| /bin/tar cIf - -") || die "Can't run tar for you: $!"; + +while (<find>) { + @x = split(' '); + if ($x[2] =~ /^d/) { print tar '-d ';} + print tar $x[10],"\n"; +} |