« first day (6 days earlier)    last day (14 days later) » 

10:20 AM
Does work like a charm with the false builtin returning 141. 141 reflecting SIGPIPE. I can live perfectly with replacing the return code (1 to 141). But...
If I try to use it in the "real" environment (local "FNAME=$(fname "$1") || kill -PIPE "$$")") I face a couple of problems:
1 FNAME ―even in the good case― now contains stuff like " || kill -PIPE 7912)" which goes into the file name when used. I am aware that I could strip it off, but that would not make the code more readable. The task to capture a "returned string" AND to honour a "returned status" seems to be quite nasty.
2 It simply does not work. The "return string" now reads "|| kill -PIPE 8367)" which becomes the filename. Kind of challenging to go with filenames like this. The annoying thing, however, is that kill doesn't kill. The script continues to run. I still dunno why. :(
Anyway, thank you for the nice try. I took me some time to understand the quoting. And it will take some more time to understand why it fails in the "real" environment.
 

« first day (6 days earlier)    last day (14 days later) »