Process stdin, line by line, sort of like AWK but 100% JS
- There are a couple of handy globals available
$is an alias forgloballogis an alias forconsole.logchalkis available for adding color to ouput
$ npm install lbl --globalUsage
$ lbl <Options><STDIN>
Options
# Pass processing functions on CLI
-a, --after functionto run after processing lines [optional]
-b, --before functionto run before processing lines [optional]
-e, --each functionto run on each line [required]
# Or, use a node module file with processing functions:# before(), after(), each()
-r, --require module file with functions
-h, --help show this usage info
--version show the current version installed
Examples
$ cat ./data/x.file | lbl -r ./scripts/X.js
<<BEGIN>> > XX > Matched 1 from 3 $ printf 'x\\nXX\\nxXx' | lbl -e 'x => { n++; if (x.match(/^X/)) { log(chalk.yellow('> ') + x); f++; } }' -b '() => { $.n = 0; $.f = 0; log('<<BEGIN>>'); }' -a '() => { log('> Matched ' + f + ' from ' + n); }' <<BEGIN>> > XX > Matched 1 from 3'use strict';/* global $, log, chalk, n:true, f:true */module.exports={each: x=>{n++;if(x.match(/^X/)){log(chalk.yellow('> ')+x);f++;}},before: ()=>{$.n=0;$.f=0;log('<<BEGIN>>');},after: ()=>{log('> Matched '+f+' from '+n);}};ISC © Buster Collings