time-to-botec

Benchmark sampling in different programming languages
Log | Files | Refs | README

README.md (1395B)


      1 # isexe
      2 
      3 Minimal module to check if a file is executable, and a normal file.
      4 
      5 Uses `fs.stat` and tests against the `PATHEXT` environment variable on
      6 Windows.
      7 
      8 ## USAGE
      9 
     10 ```javascript
     11 var isexe = require('isexe')
     12 isexe('some-file-name', function (err, isExe) {
     13   if (err) {
     14     console.error('probably file does not exist or something', err)
     15   } else if (isExe) {
     16     console.error('this thing can be run')
     17   } else {
     18     console.error('cannot be run')
     19   }
     20 })
     21 
     22 // same thing but synchronous, throws errors
     23 var isExe = isexe.sync('some-file-name')
     24 
     25 // treat errors as just "not executable"
     26 isexe('maybe-missing-file', { ignoreErrors: true }, callback)
     27 var isExe = isexe.sync('maybe-missing-file', { ignoreErrors: true })
     28 ```
     29 
     30 ## API
     31 
     32 ### `isexe(path, [options], [callback])`
     33 
     34 Check if the path is executable.  If no callback provided, and a
     35 global `Promise` object is available, then a Promise will be returned.
     36 
     37 Will raise whatever errors may be raised by `fs.stat`, unless
     38 `options.ignoreErrors` is set to true.
     39 
     40 ### `isexe.sync(path, [options])`
     41 
     42 Same as `isexe` but returns the value and throws any errors raised.
     43 
     44 ### Options
     45 
     46 * `ignoreErrors` Treat all errors as "no, this is not executable", but
     47   don't raise them.
     48 * `uid` Number to use as the user id
     49 * `gid` Number to use as the group id
     50 * `pathExt` List of path extensions to use instead of `PATHEXT`
     51   environment variable on Windows.