Linux/Solaris replace hostnames in files according to hostname rule
- by yael
According to the following Perl command
( this command part of ksh script )
I can replaced old hostnames with new hostnames in Linux or Solaris
previos_machine_name=linux1a
new_machine_name=Red_Hat_linux1a
export previos_machine_name
export new_machine_name
.
perl -i -pe 'next if /^ *#/; s/(\b|[[:^alnum:]])$ENV{previos_machine_name}(\b|[[:^alnum:]])/$1$ENV{new_machine_name}$2/g' file
EXPLAIN: according to perl command - we not replaces hostnames on the follwoing case:
RULE: [NUMBERS]||[letter]HOSTNAME[NUMBERS]||[letter]
my question
after I used the Perl command in order to replace all old hostnames with new hostnames
based on the "RULE" in the Perl command
how to verify that the old hostnames not exist in file ?
for example
previos_machine_name=linux1a
new_machine_name=Red_Hat_linux1a
more file
AAARed_Hat_linux1a verification should be ignore from this line
@Red_Hat_linux1a$ verification should be match this line
P=Red_Hat_linux1a verification should be match this line
XXXRed_Hat_linux1aZZZ verification should be ignore from this line
.
.
.
.