/usr/bin/wg-purgeWGAccess is in webgui 7.10.28-1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 | #!/usr/bin/perl
#-------------------------------------------------------------------
# WebGUI is Copyright 2001-2009 Plain Black Corporation.
#-------------------------------------------------------------------
# Please read the legal notices (docs/legal.txt) and the license
# (docs/license.txt) that came with this distribution before using
# this software.
#-------------------------------------------------------------------
# http://www.plainblack.com info@plainblack.com
#-------------------------------------------------------------------
use strict;
use File::Basename ();
use File::Spec;
my $webguiRoot;
BEGIN {
$webguiRoot = '/usr/share/webgui';
unshift @INC, File::Spec->catdir($webguiRoot, 'lib');
}
use Getopt::Long;
use Pod::Usage;
use WebGUI::Config;
local $| = 1; #disable output buffering
GetOptions(
'configFile=s' => \(my $configFile),
'help' => \(my $help),
);
pod2usage( verbose => 2 ) if $help;
pod2usage() if $configFile eq '';
my $config = WebGUI::Config->new($webguiRoot,$configFile);
use File::Find;
print "\tRemoving unnecessary .wgaccess files.\n";
my $uploadsPath = $config->get('uploadsPath');
File::Find::find({wanted => sub {
my $filename = $_;
return
if -d $filename; # Skip directories
return
if $filename ne '.wgaccess'; # skip anything other than .wgaccess
open my $fh, '<', $filename or return; # skip files we can't open
chomp (my ($user, $viewGroup, $editGroup) = <$fh>); # slurp file as lines
close $fh;
#
if ($user eq '1' || $viewGroup eq '1' || $viewGroup eq '7' || $editGroup eq '1' || $editGroup eq '7') {
unlink $filename;
}
}}, $uploadsPath);
__END__
=head1 NAME
purgeWGAccess - Clean up unneeded .wgaccess files from WebGUI repository
=head1 SYNOPSIS
purgeWGAccess --configFile config.conf
purgeWGAccess --help
=head1 DESCRIPTION
This WebGUI utility script removes unneeded .wgaccess files from
a specific site's upload directory. The script finds all the
.wgaccess files recursively starting from the upload path for
the WebGUI site specified in the given configuration file and
removes it.
=over
=item B<--configFile config.conf>
The WebGUI config file to use. Only the file name needs to be specified,
since it will be looked up inside WebGUI's configuration directory.
This parameter is required.
=item B<--help>
Shows this documentation, then exits.
=back
=head1 AUTHOR
Copyright 2001-2009 Plain Black Corporation.
=cut
|