Google Π²ΡΠΏΡΡΡΠΈΠ»Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½Π° JavaScript Π²ΠΌΠ΅ΡΡΠΎ Bash
Π ΠΈΡΠΎΠ³Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ-Π½Π°Π΄ΡΡΡΠΎΠΉΠΊΡ ΠΎΡ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠ³ΠΎ Π³ΠΈΠ³Π°Π½ΡΠ°, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅ΡΠ½ΠΎ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ ΡΠ΅Π±Π΅ ΠΆΠΈΠ·Π½Ρ, Π½Π΅ Π·Π°ΡΡΠ²Π°ΡΡΡ Π² Π΄Π΅Π±ΡΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Bash.
ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Google ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠ»Π° Π½ΠΎΠ²ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ-Π½Π°Π΄ΡΡΡΠΎΠΉΠΊΡ Π΄Π»Ρ child_process. Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ JavaScript Π²ΠΌΠ΅ΡΡΠΎ Β«ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎΒ» Bash.Β
ΠΡΠΈΠΌΠ΅Ρ ΡΠΊΡΠΈΠΏΡΠ°
ΠΠ° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ ΠΊΠ°ΠΊ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΡΠ°ΠΊ ΠΈ ΡΠ°ΠΌΡ ΡΡΡΡ Google ZX.
ΠΠ°ΠΊ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ?
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ Π² Π’Π΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ npm i -g zx
Π§ΡΠΎ Π΄Π°Π»ΡΡΠ΅?
Π‘Π°ΠΌΠΈ ΡΠΊΡΠΈΠΏΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ Π² ΡΠ°ΠΉΠ»Π΅ ΡΠΎΡΠΌΠ°ΡΠ° .mjs. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΡΠΎΠ²Π½Π΅.
ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΡΠ΅ .js-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, ΡΠΎ ΡΠΊΡΠΈΠΏΡ ΡΡΠΎΠΈΡ ΠΎΠ±Π΅ΡΠ½ΡΡΡ Π²ΠΎ ΡΡΠΎ-ΡΠΎ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ void async function () {...}().
Π’Π°ΠΊΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π½Π°ΡΠ°Π»ΠΎ ΡΠΊΡΠΈΠΏΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅Π±Π°Π½Π³: #!/usr/bin/env zx
ΠΠ°ΠΊ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠΊΡΠΈΠΏΡ?
ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π΄Π²ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ².
ΠΠ΅ΡΠ²ΡΠΉ:
ΠΡΠΎΡΠΎΠΉ:
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ zx ΡΠ΅ΡΠ΅Π· bin ΠΈΠ»ΠΈ ΡΠ΅Π±Π°Π½Π³, Π²ΡΠ΅ $, cd, fetch ΠΈ ΠΏΡΠΎΡΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±Π΅Π· ΠΈΠΌΠΏΠΎΡΡΠ°.
ΠΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π½Π° GitHub, ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: GitHub/Google