2.0.0 • Published 6 months ago

shell-tag v2.0.0

Weekly downloads
2,382
License
WTFPL
Repository
github
Last release
6 months ago

Because sometimes you want to write shell scripts with JavaScript instead of bash.

Uses a fork of shell-escape-tag to escape values.

Usage

import sh from 'shell-tag'

const lsOutput = sh`ls -1`

// => "index.js
// node_modules
// package.json
// readme.md
// test-helper
// test.js"

You can even use javascript variables inside your bash code!

import sh from 'shell-tag'

const str = 'say "what"'

const echoOutput = sh`echo ${str}`

// => say "what"

Throws errors if a non-0 exit code is returned. Otherwise, returns the string from stdout.

An async version is available:

import sh from 'shell-tag/async'

const str = 'say "what"'

(async() => {
	const echoOutput = await sh`cat package.json | grep name`

	// => '  "name": "shell-tag",\n'
})()

License

WTFPL