node package manager


fertilize -- retry the same thing, expect different results


Sometimes spawning a child process is not successful. This attempts to fertilize the process by being stubborn, retrying a number of times before eventually giving up. Therefore this isn't quite the same as "crazy", which people like to quote.


The following is just a use-case. Retrying stuff can be justified / useful, even with computers...

Sometimes (and in some cases often) rsync will fail to sync (due to "Broken pipe" or something). There is a known bug the solution for which is to keep retrying... That's exactly what this script does.

Call it like you otherwise would rsync. The only difference being that if you pass a number as the very first argument, it will run that many number of times. If you give it 0, it will run forever until done. If no number is provided, it will use some hardcoded default, which supposedly has better chances than the otherwise usual rsync once.


fertilize 3 rsync something /dev/null

Spawns rsync something /dev/null and probably fails 3 times in a row. It could be because the something is missing or /dev/null doesn't allow it.

Be careful with fertilize 0 something - it easily becomes an infinite loop... So be convinced the something is likely to exit with a status of 0. Zero (being success) is fitting for an exit, it otherwise goes on for infinity.


With the npm prerequisite, do npm install -g fertilize.


This is free and unencumbered public domain software. For more information, see or the accompanying {file:UNLICENSE} file.