|  | ||
|---|---|---|
| .. | ||
| docs/types | ||
| lib | ||
| package.json | ||
| README.md | ||
Standard Input
Usage
var stdin = require( '@stdlib/streams/node/stdin' );
stdin
Standard input as a Readable stream.
var string2buffer = require( '@stdlib/buffer/from-string' );
var Buffer = require( '@stdlib/buffer/ctor' );
var data = [];
var len = 0;
stdin.on( 'readable', onReadable );
stdin.on( 'error', onError );
stdin.on( 'end', onEnd );
function onReadable() {
    var chunk;
    while ( true ) {
        chunk = stdin.read();
        if ( chunk === null ) {
            break;
        }
        if ( typeof chunk === 'string' ) {
            chunk = string2buffer( chunk );
        }
        data.push( chunk );
        len += chunk.length;
    }
}
function onError( error ) {
    if ( error ) {
        console.error( error.message );
    }
}
function onEnd() {
    data = Buffer.concat( data, len );
    console.log( data.toString() );
    // => '...'
}
Examples
var proc = require( 'process' );
var stdin = require( '@stdlib/streams/node/stdin' );
var stdout = require( '@stdlib/streams/node/stdout' );
// Set the encoding:
stdin.setEncoding( 'utf8' );
// Create an echo stream:
stdin.pipe( stdout );
// Push data to `stdin`:
stdin.push( 'beep' );
stdin.push( ' ' );
stdin.push( 'boop' );
stdin.push( '\n' );
// End the stream:
stdin.push( null );
// Ensure the process closes:
setTimeout( proc.exit, 1000 );