我目前正在通过区域文件进行自动删除的工作排序..
perl -i -ne 'print unless (/#$DOMAINNAME/ and \$n=7) .. not \$n--' named.conf.ext
(它需要转义 n 才能工作,我猜它认为主脚本有一个要传递的变量?)
这个调用来自 perl 脚本,我想通过不必调用 shell 来从 perl 脚本重新运行 perl 来执行它,并让主脚本执行它来清理它。
正如您可能会说的那样,这里不是 perl 专家:) 我尝试过类似的东西
open (DATAIN, "<named.conf.ext");
open (DATAOUT, "> named.conf.tmp");
while (<DATAIN>){
PRINT unless (/#foo.com/ and $n=7) .. not $n-- DATAOUT;
}
close DATAOUT;
close DATAIN;
和一些变体,但它在“-- DATAOUT”附近的测试行 4 抱怨语法错误
我确定我在这方面很犹豫,答案就在我面前,但是 2 天后,我认为大脑需要从哪里开始。
谢谢