$ for i in w x y; do sleep 4; touch $i; done $ find ? -newer x y $ find ? ! -newer x w x
OK, so how does one find just x y ? No easy way, as you have a unsymmetrical -newer without a matching -older. One must resort to big hassles to work around your unsymmetrical offering of commands. You might say "no big deal, just do $ find ? -newer w x y Case closed." Well, that _just assumes_ we know about file w. But if we knew about all the files, we wouldn't be using the find(1) command in the first place. I mean we can always say "up to and including" in English, but not find(1). So do something please about the situation. Perhaps implement a -older, or something else.