No. You can read the filter rules directly from the standard input (stdin) by using the "-" (a single hyphen) instead of the rules file path.  For example:

% echo 'set edition=2; print "[centre]"; write;' | grib_filter -o out.grib2 - in.grib1

Or like this:

% grib_filter -o out.grib2 - in.grib1 <<EOF
 set edition=2;
 print "centre=[centre] paramId=[paramId]";
 write;
EOF

This filter attempts to convert the messages in the input to edition 2, prints the originating centre and paramId and finally writes the output to disk.