index.js
function parseLine(line) {
  // except for the command, no field has a space, so we split by that and piece the command back together
  var parts = line.split(/ +/);
  return {
      user    : parts[0]
    , pid     : parseInt(parts[1])
    , '%cpu'  : parseFloat(parts[2])
    , '%mem'  : parseFloat(parts[3])
    , vsz     : parseInt(parts[4])
    , rss     : parseInt(parts[5])
    , tty     : parts[6]
    , state   : parts[7]
    , started : parts[8]
    , time    : parts[9]
    , command : parts.slice(10).join(' ')
  }
}
function parseLine(line) {
  // except for the command, no field has a space, so we split by that and piece the command back together
  var parts = line.split(/ +/);
  return {
      user    : parts[0]
    , pid     : parseInt(parts[1])
    , '%cpu'  : parseFloat(parts[2])
    , '%mem'  : parseFloat(parts[3])
    , vsz     : parseInt(parts[4])
    , rss     : parseInt(parts[5])
    , tty     : parts[6]
    , state   : parts[7]
    , started : parts[8]
    , time    : parts[9]
    , command : parts.slice(10).join(' ')
  }
}
function parseLine ( line ) { // except for the command, no field has a space, so we split by that and piece the command back together var parts = line . split ( /  + / ) ; return { user : parts [ 0 ] , pid : parseInt ( parts [ 1 ] ) , '%cpu' : parseFloat ( parts [ 2 ] ) , '%mem' : parseFloat ( parts [ 3 ] ) , vsz : parseInt ( parts [ 4 ] ) , rss : parseInt ( parts [ 5 ] ) , tty : parts [ 6 ] , state : parts [ 7 ] , started : parts [ 8 ] , time : parts [ 9 ] , command : parts . slice ( 10 ) . join ( ' ' ) } }
Parses out process info from a given `ps aux` line.

@name parseLine
@private
@function
@param {string} line the raw info for the given process
@return {Object} with parsed out process info
Parses out process info from a given ps aux line .