#!/bin/sheval 'exec `/usr/bin/iwgethome`/iw-perl/bin/iwperl -x -S $0 ${1+"$@}';#!iwperl -wuse TeamSite::Config;(my $iwmnt=TeamSite::Config::iwgetmount()) =~ tr|\\|/|;$start = $iwmnt."/default/main";readSub($start);sub readSub {my $dir=shift;opendir (DIR, $dir) || die "Cannot opendir $dir: $!";my @list = readdir (DIR);closedir(DIR);foreach my $folder (@list) {next if ($folder =~ m|STAGING|);next if ($folder =~ m|EDITION|);next if ($folder =~ m|\.\.|);next if ($folder =~ m|\.|);if ($folder =~ m|WORKAREA|) {opendir (DIR, $dir."/".$folder) || die "Cannot opendir $dir"."/"."$folder: $!";my @workareas = readdir (DIR);closedir(DIR);foreach (@workareas) {next if (m|\.\.|);next if (m|\.|);print "$dir/$folder/$_\n";}next;}readSub($dir."/".$folder);}}
This should work:...
use strict;use warnings;use TeamSite::Config;use TeamSite:irwalk;my $iwmount = TeamSite::Config::iwgetmount();my $start_dir = "$iwmount/default/main";my $obj = TeamSite:irwalk->new(dir_handler => \&dh);$obj->dirwalk($start_dir);exit 0;sub dh { my ($self, $dir) = @_; return 0 if ($dir =~ m{/(EDITION|WORKAREA|STAGING)$}); $dir =~ s|^$iwmount||; warn("$dir\n"); return 1;}
BTW, where can I fins documentation on the Perl modules that come with TeamSite & some of the other InterWoven products (e.g. OpenDeploy).
iwhome/iw-perl/vendor/lib/TeamSite
http://ts-server/iw/help/tst/pt
TeamSite::Flexroles
Ahh - haven't had fun writing code in a while - I like this version (which will just show branches):use strict;use warnings;use TeamSite::Config;use TeamSite:irwalk;my $iwmount = TeamSite::Config::iwgetmount();my $start_dir = "$iwmount/default/main";my $obj = TeamSite:irwalk->new(dir_handler => \&dh);$obj->dirwalk($start_dir);exit 0;sub dh {my ($self, $dir) = @_;return 0 if ($dir =~ m{/(EDITION|WORKAREA|STAGING)$});$dir =~ s|^$iwmount||;warn("$dir\n");return 1;}
use strict;use warnings;use TeamSite::Config;use TeamSite:irwalk;my $iwmount = TeamSite::Config::iwgetmount();my $start_dir = "$iwmount/default/main";my $obj = TeamSite:irwalk->new(dir_handler => \&dh);$obj->dirwalk($start_dir);exit 0;sub dh {my ($self, $dir) = @_;return 0 if ($dir =~ m{/(EDITION|WORKAREA|STAGING)$});$dir =~ s|^$iwmount||;warn("$dir\n");return 1;}