在节点js中执行进程
Execute Process in node js
我在 c# 中的代码工作正常,在我 UI automation.I 需要节点 js 中的等效代码期间在特定服务器框中运行作业。
ProcessStartInfo startinfo = new ProcessStartInfo();
startinfo.FileName = string.Format("schtasks.exe");
string command = string.Format(" /run /s {0} /tn \"{1}\"", "serverbox", "Jobname");
startinfo.Arguments = command;
startinfo.CreateNoWindow = true;//Not much important
startinfo.UseShellExecute = false;//Not much important
startinfo.WindowStyle = ProcessWindowStyle.Hidden;//Not much important
Common.Log.Info("Executing Command - " + command);
Process proc = new Process();
proc = Process.Start(startinfo);
我在 node.js 中有以下代码会抛出“参数选项的值不正确”错误。
function executeProcess() {
var command = new String(" /run /s {0} /tn \"{1}\"", "serverbox", "jobname");
exec(command, function (err, stdout, stderr) {
console.log("Running job");
callback(err, stdout, stderr, data)
});
};
字符串构造函数只接受一个参数。
您的错误在这里:
var command = new String(" /run /s {0} /tn \"{1}\"", "serverbox", "jobname");
为避免错误,请使用名为 string templates
:
的 javascript 功能
const command = ` /run /s "${serverbox}" /tn "${jobname}"`
我在 c# 中的代码工作正常,在我 UI automation.I 需要节点 js 中的等效代码期间在特定服务器框中运行作业。
ProcessStartInfo startinfo = new ProcessStartInfo();
startinfo.FileName = string.Format("schtasks.exe");
string command = string.Format(" /run /s {0} /tn \"{1}\"", "serverbox", "Jobname");
startinfo.Arguments = command;
startinfo.CreateNoWindow = true;//Not much important
startinfo.UseShellExecute = false;//Not much important
startinfo.WindowStyle = ProcessWindowStyle.Hidden;//Not much important
Common.Log.Info("Executing Command - " + command);
Process proc = new Process();
proc = Process.Start(startinfo);
我在 node.js 中有以下代码会抛出“参数选项的值不正确”错误。
function executeProcess() {
var command = new String(" /run /s {0} /tn \"{1}\"", "serverbox", "jobname");
exec(command, function (err, stdout, stderr) {
console.log("Running job");
callback(err, stdout, stderr, data)
});
};
字符串构造函数只接受一个参数。 您的错误在这里:
var command = new String(" /run /s {0} /tn \"{1}\"", "serverbox", "jobname");
为避免错误,请使用名为 string templates
:
const command = ` /run /s "${serverbox}" /tn "${jobname}"`