stormbytes

Untitled

Jun 2nd, 2017
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var argv = require('minimist')(process.argv.slice(2));
  2. var exec = require('child_process').execSync;
  3.  
  4. // 1: Get usb/serial ports
  5. try {
  6.     var ports = exec('ls /dev/*usb*', {'stdio':'pipe'});   
  7. } catch (e) {
  8.     console.error('No USB ports/devices detected');
  9.     // console.log(e.stderr.toString());
  10.     return 1
  11. }
  12.  
  13. ports = ports.toString().trim().split("\n");
  14.  
  15. // 2: Check for port-by-list-index
  16. if ('i' in argv) {
  17.     let i = parseInt(argv['i'], 10);
  18.  
  19.     if (isNaN(i) || i >= ports.length){
  20.         console.error(`invalid index: ${argv['i']}`);
  21.         return 1;
  22.     }
  23.     console.log(ports[i]);
  24. }
  25.  
  26. // 3. default: list ports
  27. console.log('...................................................')
  28. for (i=0; i<= ports.length-1; i++) {
  29.     console.log(i + ': ' + ports[i]);
  30. }
  31. console.log('...................................................')
Advertisement
Add Comment
Please, Sign In to add comment