async only helps with io-wait concurrency, but not cpu-bound concurrency.
async is popular in JS because the browser is often waiting on many requests.
command-line tools are commonly computing something. even grep has to process the pattern matching so concurrent IO doesn't help a single-threaded pattern match.
Sure there are applications where async would help a CLI app, but there are fewer than JS.
Plus JS devs love rewriting code very 3 months.