#!/usr/bin/perl use strict; use warnings; # this script deletes all shared memory segments accessible by the # running user. Probably only works on Linux systems. open(IPCS, 'ipcs |') or die "Probs opening icps : $!"; my $mode = 0; while () { if (/(Shared)|(Semaphore)|(Message)/) { $mode++; next; } next unless /^0x[0-9a-f]+\s(\d+)\s.*$/; system("ipcrm shm $1") if ($mode == 1); system("ipcrm sem $1") if ($mode == 2); system("ipcrm msg $1") if ($mode == 3); }