isexe
Minimal module to check if a file is executable, and a normal file.
Uses fs.stat
and tests against the PATHEXT
environment variable on Windows.
USAGE
var isexe = require('isexe')
isexe('some-file-name', function (err, isExe) {
if (err) {
console.error('probably file does not exist or something', err)
} else if (isExe) {
console.error('this thing can be run')
} else {
console.error('cannot be run')
}
})
// same thing but synchronous, throws errors
var isExe = isexe.sync('some-file-name')
// treat errors as just "not executable"
isexe('maybe-missing-file', { ignoreErrors: true }, callback)
var isExe = isexe.sync('maybe-missing-file', { ignoreErrors: true })
API
isexe(path, [options], [callback])
Check if the path is executable. If no callback provided, and a global Promise
object is available, then a Promise will be returned.
Will raise whatever errors may be raised by fs.stat
, unless options.ignoreErrors
is set to true.
isexe.sync(path, [options])
Same as isexe
but returns the value and throws any errors raised.
Options
ignoreErrors
Treat all errors as "no, this is not executable", but don't raise them.uid
Number to use as the user idgid
Number to use as the group idpathExt
List of path extensions to use instead ofPATHEXT
environment variable on Windows.