根据以下 Perl 命令
(此命令是 ksh 脚本的一部分)
我可以在 Linux 或 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
解释:根据 perl 命令 - 我们不会在以下情况下替换主机名:
规则: [数字]||[字母]主机名[数字]||[字母]
我的问题
在我使用 Perl 命令以根据 Perl 命令中的“RULE”将所有旧主机名替换为新主机名之后
如何验证文件中不存在旧主机名?
例如
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
.
.
.
.
使用 fowling line 打印匹配字符串
如果它打印出空的,那意味着不存在旧的主机名。