home *** CD-ROM | disk | FTP | other *** search
- #!/usr/bin/perl
-
- # $RCSfile: shmkill,v $$Revision: 4.1 $$Date: 92/08/07 17:20:45 $
-
- # A script to call from crontab periodically when people are leaving shared
- # memory sitting around unattached.
-
- open(ipcs,'ipcs -m -o|') || die "Can't run ipcs: $!";
-
- while (<ipcs>) {
- $tmp = index($_,'NATTCH');
- $pos = $tmp if $tmp >= 0;
- if (/^m/) {
- ($m,$id,$key,$mode,$owner,$group,$attach) = split;
- if ($attach != substr($_,$pos,6)) {
- die "Different ipcs format--can't parse!\n";
- }
- if ($attach == 0) {
- push(@goners,'-m',$id);
- }
- }
- }
-
- exec 'ipcrm', @goners if $#goners >= 0;
-