• Home
Name Date Size #Lines LOC

..--

bin/07-Sep-2024-5346

LICENSED07-Sep-2024765 1612

README.mdD07-Sep-20241.3 KiB5539

package.jsonD07-Sep-20241 KiB4443

which.jsD07-Sep-20243.1 KiB126100

README.md

1# which
2
3Like the unix `which` utility.
4
5Finds the first instance of a specified executable in the PATH
6environment variable.  Does not cache the results, so `hash -r` is not
7needed when the PATH changes.
8
9## USAGE
10
11```javascript
12var which = require('which')
13
14// async usage
15which('node', function (er, resolvedPath) {
16  // er is returned if no "node" is found on the PATH
17  // if it is found, then the absolute path to the exec is returned
18})
19
20// or promise
21which('node').then(resolvedPath => { ... }).catch(er => { ... not found ... })
22
23// sync usage
24// throws if not found
25var resolved = which.sync('node')
26
27// if nothrow option is used, returns null if not found
28resolved = which.sync('node', {nothrow: true})
29
30// Pass options to override the PATH and PATHEXT environment vars.
31which('node', { path: someOtherPath }, function (er, resolved) {
32  if (er)
33    throw er
34  console.log('found at %j', resolved)
35})
36```
37
38## CLI USAGE
39
40Same as the BSD `which(1)` binary.
41
42```
43usage: which [-as] program ...
44```
45
46## OPTIONS
47
48You may pass an options object as the second argument.
49
50- `path`: Use instead of the `PATH` environment variable.
51- `pathExt`: Use instead of the `PATHEXT` environment variable.
52- `all`: Return all matches, instead of just the first one.  Note that
53  this means the function returns an array of strings instead of a
54  single string.
55