Đoàn Trần Công Danh <congdanhqx@xxxxxxxxx> writes: > Then, we are getting back to point #0, we don't have universally way > to specify stdin as input file for crontab(1) and "crontab -e" is > optional. > > Perhaps, FreeBSD needs to carry this patch downstream; or > we will invent new preprocessor, let's say CRONTAB_DASH_IS_STDIN > which is defined in FreeBSD, Does FreeBSD offer choices of cron implementations other than Vixie, just like some Linux distributions? If somebody on a non-FreeBSD platform happens to choose to use Vixie, then they would presumably have the same problem, so a compile-time switch, whose default is hardcoded based on the target platform, would not work very well. The default will be wrong for some users, and users can later choose to switch between different cron implementations. Configuration knob can be used as a workaround, but in this case, I am not sure if it is worth doing. What's the downside of securely opening a temporary file and write whatever we are currently piping to a spawned "crontab" command and then giving the path to that temporary file to the "crontab" command? Wouldn't that give us the maximal portability without that much code, no? I think this is all Derrick's code from 2fec604f (maintenance: add start/stop subcommands, 2020-09-11), so let's add him to the discussion.