Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

file-or-stdin

shinnn247ISC2.0.0-2

Read a file, or read stdin if no files are specified

file, stdin, read, console, content, contents, buffer, input, in, fallback, promise, promises, then, thenable

readme

file-or-stdin

npm version Build Status Coverage Status

Read a file, or read stdin if no files are specified

// echo "Hello!" | node example.js
const fileOrStdin = require('file-or-stdin');

(async () => {
  (await fileOrStdin('path/to/a/file')).toString() // file contents;
  (await fileOrStdin(null)).toString(); //=> 'Hello!'
})();

Installation

Use npm.

npm install file-or-stdin

API

const fileOrStdin = require('file-or-stdin');

fileOrStdin(filePath [, options])

filePath: string or a falsy value
options: Object (fs.readFile options) or string (encoding)
Return: Promise<Buffer> or Promise<string>

When the first argument is a file path, it reads the given file and returns a promise of the file contents.

When the first argument is a falsy value, it reads stdin and returns a promise of the buffered stdin data.

// echo "nodejs" | node example.js
(async () => {
  await fileOrStdin('', 'utf8'); //=> 'nodejs'
})();
// echo "nodejs" | node example.js
(async () => {
  await fileOrStdin('', 'base64'); //=> 'bm9kZWpz'
})();

License

ISC License © 2018 Shinnosuke Watanabe