in reply to Deleting lines from named.conf file

It is good that you have shown some code. However, I am still not certain what you are trying to accomplish.

If you are trying to delete lines within left and right curly braces, {}, then you could use Range Operators:

#!/usr/bin/env perl use warnings; use strict; while (<DATA>) { unless (/{/ .. /}/) {print} } __DATA__ keep { junk junk2 junk3 } keep keep2 keep3 { junk4 } keep4
This will delete all the text within the curly braces (the "junk" text), and will preserve all the text outside the braces (the "keep" text). The output of this script is:
keep keep1 keep2 keep3 keep4
If this does not help, perhaps you could provide a small sample of your input "hello" file, and show which line you want to delete from that file.

Replies are listed 'Best First'.
Re^2: Deleting lines from named.conf file
by firewall00 (Acolyte) on Nov 10, 2007 at 03:42 UTC
    thanks for your help but exactly what i want to make is to delete a certain zone from a file the zone will be provided
    by the user input which i assigned at the start of my code
    and then uses the $block variable to count the range of the curly brackets until the end of the zone
    Example for what iam taking about
    zone "foo.com" { type master; file path to file ; }; zone "bar.com" { type master; file path to file ; additional informations { blah blah blab } } zone "perl.com" { type master; file path to file; }
    i want to delete lines from start of the the zone which is provided by targetdomain variable which is entered by the user
    after the script is running assume that the targetdomain was = bar.com the output
    zone "foo.com" { type master; file path to file ; }; zone "perl.com" { type master; file path to file; };
    and thanks for your care