New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

@isaacs/which

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@isaacs/which

Like which(1) unix command. Find the first instance of an executable in the PATH.

latest
Source
npmnpm
Version
7.0.4
Version published
Maintainers
1
Created
Source

@isaacs/which

Like the unix which utility.

Finds the first instance of a specified executable in the PATH environment variable. Does not cache the results, so hash -r is not needed when the PATH changes.

Fork Notice

This is a fork of the original which module that I wrote in 2011, because that became the property of npm, and I wanted a hybrid CommonJS/ESM typescript implementation, which doesn't align with the npm team's needs.

I'm ok with the fork continuing to exist. It is fine for different parties to have different priorities. This is a small module, and it does no harm to have multiple copies in the world.

USAGE

import { which, whichSync } from '@isaacs/which'

// async usage
// rejects if not found
const resolved = await which('node')

// if nothrow option is used, returns null if not found
const resolvedOrNull = await which('node', { nothrow: true })

// sync usage
// throws if not found
const resolved = whichSync('node')

// if nothrow option is used, returns null if not found
const resolvedOrNull = whichSync('node', { nothrow: true })

// Pass options to override the PATH and PATHEXT environment vars.
await which('node', { path: someOtherPath, pathExt: somePathExt })

OPTIONS

You may pass an options object as the second argument.

  • path: Use instead of the PATH environment variable.
  • pathExt: Use instead of the PATHEXT environment variable.
  • all: Return all matches, instead of just the first one. Note that this means the function returns an array of strings instead of a single string.

FAQs

Package last updated on 09 Feb 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts