@vltpkg/cmd-shim

0.0.0-10 • Public • Published

@vltpkg/cmd-shim

This is a module for writing .cmd and .ps1 shims for executables on Windows, since shebangs are not supported on Windows, and thus symlinks are not sufficient for running executables.

Note · Usage

Note

This module doesn't do anything on non-Windows platforms.

On Windows platforms, it parses the #! (shebang) line of a script, and figures out how to write the appropriate .cmd shim for it.

The behavior is just like creating a symlink, and it'll clobber anything in its way.

It can also be used to determine which package a shim points to (assuming it was created by vlt).

Usage

import { cmdShim, findSource } from '@vltpkg/cmd-shim'

const binFile = 'node_modules/some-pkg/bin/foo.js'
const target = 'node_modules/.bin/foo'

await cmdShim(binFile, target)
// now the file is there
assert(statSync(target).isFile())

// prints: 'node_modules/some-pkg'
console.error(await findSource(target))

Readme

Keywords

none

Package Sidebar

Install

npm i @vltpkg/cmd-shim

Weekly Downloads

103

Version

0.0.0-10

License

BSD-2-Clause-Patent

Unpacked Size

44.7 kB

Total Files

20

Last publish

Collaborators

  • ruyadorno
  • darcyclarke
  • vltops
  • isaacs
  • lukekarrys