The -flush option is no longer needed in the current
versions of wgrib2 except for special cases.. The code detects when you are
writing to a special file like a pipe and turns on the
-flush option. The only known example where you might
want to use the -flush option is when writing to a file
and another program is reading from the file at the same time.
The -flush option causes wgrib2 to flush the
output buffers after every write. You would use this option
if you were running wgrib2 as an interactive decoder or using
pipes to multitask the processing.
Interactive processing will the need -flush option
because under normal conditions, wgrib2 will wait until its buffers are
full before writing to a device.