`test` (aka [) is a bash builtin, FWIW; integer comparison works perfectly well inside (( )).<p>I generally prefer bash for job control and pipe parallelism. For more complex tasks that would require a hash, internet access complex parsing etc., I tend to write a script in a different language, and plug it into a pipeline with bash.<p>The lack of parallelism in PS is the second biggest reason I don&#x27;t use it.<p>The single biggest reason is bash is my common interface across Linux, Windows (cygwin), OS X and Solaris (when I used to run it).