【发布时间】:2022-01-20 00:30:48
【问题描述】:
在我的httpd.conf 文件中,如果文件tmp 不存在,我只想执行以下过滤器:
ExtFilterDefine htmlfilter mode=output intype=text/html cmd="/usr/bin/perl -pe 's|Mountainbike|BLUE|e unless q{\"\\Q/path/to/my.test.file/.tmp\E\"}'"
现在它不工作。我猜q{...} 部分是错误的。我需要改变什么?
【问题讨论】:
-
好吧,
q{}是模拟单引号''的运算符,所以你说的是unless "string",这(几乎)总是正确的。我的猜测是您想要在字符串之前进行文件测试,即unless -e "...."。我猜你认为字符串是一个正则表达式,所以你可以去掉\Q .. \E转义序列,因为它实际上是一个字符串,它没有用处。
标签: perl