You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							52 lines
						
					
					
						
							985 B
						
					
					
				
			
		
		
	
	
							52 lines
						
					
					
						
							985 B
						
					
					
				#!/usr/bin/env node | 
						|
var which = require("../") | 
						|
if (process.argv.length < 3) | 
						|
  usage() | 
						|
 | 
						|
function usage () { | 
						|
  console.error('usage: which [-as] program ...') | 
						|
  process.exit(1) | 
						|
} | 
						|
 | 
						|
var all = false | 
						|
var silent = false | 
						|
var dashdash = false | 
						|
var args = process.argv.slice(2).filter(function (arg) { | 
						|
  if (dashdash || !/^-/.test(arg)) | 
						|
    return true | 
						|
 | 
						|
  if (arg === '--') { | 
						|
    dashdash = true | 
						|
    return false | 
						|
  } | 
						|
 | 
						|
  var flags = arg.substr(1).split('') | 
						|
  for (var f = 0; f < flags.length; f++) { | 
						|
    var flag = flags[f] | 
						|
    switch (flag) { | 
						|
      case 's': | 
						|
        silent = true | 
						|
        break | 
						|
      case 'a': | 
						|
        all = true | 
						|
        break | 
						|
      default: | 
						|
        console.error('which: illegal option -- ' + flag) | 
						|
        usage() | 
						|
    } | 
						|
  } | 
						|
  return false | 
						|
}) | 
						|
 | 
						|
process.exit(args.reduce(function (pv, current) { | 
						|
  try { | 
						|
    var f = which.sync(current, { all: all }) | 
						|
    if (all) | 
						|
      f = f.join('\n') | 
						|
    if (!silent) | 
						|
      console.log(f) | 
						|
    return pv; | 
						|
  } catch (e) { | 
						|
    return 1; | 
						|
  } | 
						|
}, 0))
 | 
						|
 |