1

运行sh.exec('whoami')时,我试图比较标准输出,但它不起作用。

我想要做的是,在运行whoami命令后,如果结果变成特定用户,那么我想触发一个动作。

跑步时,

sh.exec('whoami', (code, output) => {
  sh.echo(output == 'myusername'); // False
  console.log(output == 'myusername'); // False
});

output == 'myusername'即使我完全确定它是真的,因为我已经复制了用户名并将其作为比较字符串放置,所以条件评估为假。

预期的结果是条件评估为真。

4

1 回答 1

0

正在做,

 console.log(sh.exec('whoami'));

你得到以下输出,

{ [String: 'username\n']
  stdout: 'username\n',
  stderr: '',
  code: 0,
  cat: [Function: bound ],
  exec: [Function: bound ],
  grep: [Function: bound ],
  head: [Function: bound ],
  sed: [Function: bound ],
  sort: [Function: bound ],
  tail: [Function: bound ],
  to: [Function: bound ],
  toEnd: [Function: bound ],
  uniq: [Function: bound ] 
}

问题只是一条新线。stdout结尾有一个\n

于 2019-04-26T17:47:29.237 回答