https://github.com/hackergrrl/argv-or-stdin
use the 1st argument, or, if none is present, standard input
https://github.com/hackergrrl/argv-or-stdin
Last synced: 10 months ago
JSON representation
use the 1st argument, or, if none is present, standard input
- Host: GitHub
- URL: https://github.com/hackergrrl/argv-or-stdin
- Owner: hackergrrl
- Created: 2016-10-03T03:14:13.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-10-03T03:14:20.000Z (over 9 years ago)
- Last Synced: 2025-04-02T13:04:30.922Z (about 1 year ago)
- Language: JavaScript
- Homepage:
- Size: 1000 Bytes
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# argv-or-stdin
> use the 1st argument, or, if none is present, standard input
Sometimes you want to write a tool that takes a filename as its argument.
However, if there is no argument provided, it'd be great to also accept it on
standard input.
## Usage
Let's write a simple version of the program `cat`:
`cat.js`
```js
var arg = require('argv-or-stdin')
var fs = require('fs')
arg(function (err, filename) {
fs.createReadStream(filename)
.pipe(process.stdout)
})
```
And test it:
```
$ cat > test
hello warld
^D
$ node cat.js test
hello warld
$ echo 'test' | node cat.js
hello warld
```
## API
```js
var arg = require('argv-or-stdin')
```
### arg(cb)
A function that will check `process.argv[2]` and, if it does not exist,
accumulate all of `process.stdin` into a string and return that.
`cb` is a callback function of the form `function (err, name) {}`.
## Install
With [npm](https://npmjs.org/) installed, run
```
$ npm install argv-or-stdin
```
## See Also
- [`noffle/common-readme`](https://github.com/noffle/common-readme)
## License
ISC