Hacker News new | ask | show | jobs
by scary-size 677 days ago
> I learned a lot about JavaScript (and Node.js) by writing shell scripts in Node.js.

Totally! This will give you lot of insights into low-level working of JS. Of course, some Node.js specifics too. Reading from STDIN, parsing strings into structured data etc.

1 comments

For writing shell scripts in Node, there’s a helper library called zx created by Google.

I find it a lifesaver for the common occasion when I’m tempted to write a bash script but also know it’s going to need some slightly more advanced features (as in parsing a JSON, or just arrays that are not totally bonkers in syntax).

Yes, I was about to propose this. But then again, the author wants to learn the basics without grappling with abstractions. I think zx can be a bit quirky.
For sure there's an element of magic to zx. The use of tagged template literals doesn't look like plain JavaScript even though it's standard.

You need to understand async/wait, promises and tag functions to make sense of this basic zx example:

  await $`ls -la`