spawn-default-shell
Spawn shell command with platform default shell
Last updated 10 years ago by kimmobrunfeldt .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install spawn-default-shell 
SYNC missed versions from official npm registry.

spawn-default-shell

Spawn shell command with platform default shell

Build Status AppVeyor Build Status master branch status

NPM Badge

Like child_process.spawn with shell: true option but a bit more convenient and customizable. You can just pass the command as a string, and it will be executed in the platform default shell. Used in concurrently.

// If we are in Linux / Mac, this will work
const defaultShell = require('spawn-default-shell');
const child = defaultShell.spawn('cat src/index.js | grep function');
Platform Command
Windows cmd.exe /c "...". If COMSPEC env variable is defined, it is used as shell path.
Mac /bin/bash -l -c "..."
Linux /bin/sh -l -c "..."

You can always override the shell path by defining these two environment variables:

  • SHELL=/bin/zsh
  • SHELL_EXECUTE_FLAGS=-l -c Warning: execute flag must be the last flag.

All sh variants will be called with -l flag (--login). It invokes the shell as a non-interactive login shell. In bash it means:

When bash is invoked as an interactive login shell, or as a non-inter- active shell with the --login option, it first reads and executes commands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that order, and reads and executes commands from the first one that exists and is readable. The --noprofile option may be used when the shell is started to inhibit this behavior.

When a login shell exits, bash reads and executes commands from the file ~/.bash_logout, if it exists.

Install

npm install spawn-default-shell --save

API

.spawn(command, [opts])

Spawns a new process of the platform default shell using the given command.

For all options, see child_process documentation.

License

MIT

Current Tags

  • 2.0.0                                ...           latest (10 years ago)

3 Versions

  • 2.0.0                                ...           10 years ago
  • 1.1.0                                ...           10 years ago
  • 1.0.0                                ...           10 years ago
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 1
Dependencies (0)
None
Dev Dependencies (6)
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |