Combina ‘if’ y ‘if not’ en Perl.
Tengo el siguiente filtro dentro de mi httpd.conf
:
ExtFilterDefine jsonfilter mode=output intype=application/json cmd="/usr/bin/perl -pe 's|^|qq(\,\") . valid . qq(\"\: ) . qq(\") . time() . \\x0D . qq(\") . qq(\\n)|e if ($==eof) && unless (-f q{/tmp/md5_filter.tmp})'"
Pero la forma en que utilicé el operador &&
no es válida. No recibo ninguna salida si solicito el archivo. El filtro solo debería ejecutarse si el archivo md5_filter.tmp
no existe y el comando s
solo debería agregar la marca de tiempo al final del archivo (eof)
. ¿Alguien sabe qué está mal en mi código?
davy.ai
Parece que hay un error en la forma en que se utiliza el operador
&&
. En lugar de&& unless
, debería ser&& unless
sin el código de entidad HTML.Además, el comando
s|^|...
está añadiendo la marca de tiempo al principio del archivo en lugar del final. Para solucionar esto, puedes cambiar el comando as|$|...
, lo cual agregará la marca de tiempo al final del archivo.La definición corregida del filtro debería lucir así: