ShellJs & bash

  • Aveti dureri de cap incercand sa cititi un script bash?
  • Senzatie de rau cand incercati sa scrieti un script bash?
  • Iritati cand trebuie sa reparati un script bash?

ShellJS

  • Cod usor de urmarit
  • Fara variabile pe care le cauti de fiecare data
  • Mult mai usor de inteles

Avantaje

  • Functioneaza pe windows
  • Extensibil cu librarii de npm sau din proiect
  • Parseaza JSON (si nu numai)
  • Il pot intelege inginerii de sistem
  • Poate monitoriza un proces asincron
  • Linting, unit testing mult mai usor
  • Array-uri utilizabile

Dezavantaje

  • Trebuie rulat npm install prima oara
  • Sensibil mai incet
  • Daemon = 100% dintr-un core

Esantion comparativ

#!/usr/bin/env node
require ('shelljs/global');

var lsla = exec('ls -la', {silent:true});
chmod('644', '*.mp3');

if(lsla.code == 0) {
  console.log("Success");
}
console.log(lsla.output);
#!/usr/bin/env bash

lslaoutput=$(ls -la)
#chmod -R 644 *.mp3
lslacode=$?

if [ $lslacode -eq 0 ]; then
  echo "Success"
fi
echo $lslaoutput

Esantion comparativ

#!/usr/bin/env node
require ('shelljs/global');

var list = prepare_list( process.argv[2], process.argv[3], process.argv[4] );

for (i = 0; i < list.length; i++) {
  do_something(list[i]);
}
#!/usr/bin/env bash
echo '' >> /tmp/list.txt
prepare_list "$1" "$2" "$3"

while read A B C D; do

  do_something "$A" "$B" "$C" "$D"

done < /tmp/list.txt
rm -f /tmp/apps.txt

Esantion comparativ

Intrebari?

Mulțam' fain.

ShellJs - Ro

By cz

ShellJs - Ro

  • 144