#!/usr/bin/perl $key = shift @ARGV; $skip = 0; $skipping = 0; while (<>) { if (/^#/ && $. != 1) { $skip = $_ !~ /$key/; print unless $skip; next; } if (/^\s/) { print unless $skipping; next; } print unless $skip; $skipping = $skip; $skip = 0; }