ipcs コマンドで message queue, shared memory, semaphore の状態を見ることが出来る。ipcrm でそれぞれ削除できる。
ところが全部消すってなるとそういうコマンドが無いので仕方ないからワンライナー。
ipcs -m | perl -e '<STDIN> for(1..3); while (<STDIN>) { my $semid = ((split /\s+/)[1]); system("ipcrm -m $semid"); }'
ipcs のオプションと icprm のオプション*1が一致してるのがミソ。