#!/usr/bin/perl -w use strict; use CGI qw(:standard); print header, start_html( -title=>'CHMOD UTILITY' ); &do_chmod if param; &send_form; sub do_chmod { my $Perm; if (param('Action') eq 'Not Executable') { $Perm = 0644; } else { $Perm = 0755; } for (param('Dirs')) { my @files; push @files, $_ while <$_*.p*>; if (chmod $Perm, @files) { print "Changed permissions on " . join(" ; ",@files) . " to " . $Perm . "
"; } else { print "Could not change perms on " . join(" ; ",@files) . " to " . $Perm . "
"; } } print "DONE"; } sub send_form { my @dirs; push @dirs, $_ while <../*/>; print startform( -name=>'mainform', -method=>'POST', -action=>'chmod.pl', ), checkbox_group( 'Dirs', [@dirs], [], 1, ), submit( -name=>'Action', -value=>'Executable', ), submit( -name=>'Action', -value=>'Not Executable', ), endform, end_html; }