Google ZX - σενάρια κελύφους με Javascript

Πώς να γράψετε σενάρια shell με Javascript και Node.js

Μια πραγματικά παγκόσμια γλώσσα

Με την άνοδο του Node.js, Javascript (και πρόσφατα, Typescript), έχει γίνει μια εξέχουσα γλώσσα για να γράφει κάθε είδους διαφορετικά σενάρια. Χάρη στις βασικές βιβλιοθήκες που περιλαμβάνονται σε κάθε παρουσία Node.js, οι προγραμματιστές έχουν επίσης πρόσβαση σε διάφορες κλήσεις στο λειτουργικό σύστημα. Η ευελιξία του Javascript (αν και με κόστος σκληρότερης συντήρησης) σε συνδυασμό με τον ισχυρό κινητήρα χρόνου εκτέλεσης το βοήθησε να αποκτήσει μεγάλο αποτύπωμα σε τρέχοντα περιβάλλοντα διακομιστή. Για τα μηχανήματα UNIX, αυτό σημαίνει ότι το Javascript ζει μαζί με τα καθιερωμένα σενάρια Bash, τα οποία υποστηρίζονται εγγενώς από το λειτουργικό σύστημα.

Αλλά τι γίνεται αν…

Τι γίνεται όμως αν μπορούσατε να καλέσετε απευθείας τις εντολές Bash εντός των σεναρίων Node.js; Ίσως θελήσετε να χρησιμοποιήσετε το Javascript για τις περισσότερες εφαρμογές, αλλά έχετε την απαίτηση να χρησιμοποιήσετε το Bash εδώ και εκεί για να επιτύχετε έναν στόχο.

Με ένα από τα πιο πρόσφατα έργα της Google, ένα εργαλείο CLI που ονομάζεται απλά «zx», μια τέτοια βιβλιοθήκη είναι πλέον διαθέσιμη. Το καλύτερο από όλα: μπορείτε να το χρησιμοποιήσετε αμέσως. Το μόνο που χρειάζεστε είναι μια εγκατεστημένη παρουσία Node.js που είναι ίση ή υψηλότερη με την έκδοση 14.

// Your JS-file. You can either use
// the .js-suffix or the alternative
// .mjs-suffix, which allows the global
// usage of 'await' when used with 'zx'.

// The nessary shebang, as in Bash-scripts
#!/usr/bin/env zx

// A simple demonstration on how to
// call Bash-command inside your JS.
// Here, we log the current working directory.
await $`echo $PWD`;
// Now to call your file, you can 
// simply use 'npx', the node package
// executor that comes with NPM.

npx zx ./demo.mjs

// For more examples, check out the 
// repo where Google provides some
// more real-world use cases.

Χρησιμοποιώντας το σύμβολο δολαρίου ως χειριστή ακολουθούμενο από δύο backticks που περιλαμβάνουν τον κωδικό Bash, μπορείτε να πραγματοποιήσετε πραγματικές κλήσεις όπως σε ένα σενάριο Bash.

Και εάν εγκαταστήσετε το "zx" ως καθολική εξάρτηση, μπορείτε να καλέσετε τα αρχεία Javascript με τον ίδιο τρόπο όπως τα σενάρια Bash.

Περισσότερα για εξερεύνηση

Αυτό το άρθρο στοχεύει μόνο στην εισαγωγή του πακέτου. Για περισσότερες πληροφορίες, ρίξτε μια ματιά στους συνδέσμους στο προσάρτημα για να εξερευνήσετε πλήρως το API και όλες τις δυνατότητες που υποστηρίζει το "zx".

Προτάσεις

Σχετικά

Προσάρτημα

Γλώσσες