我有以下代码行可在NodeJS中运行程序:
require('child_process').exec('(cd c:\location && command -argument)', (err, stdout, stderr)=>{});
这在我的个人计算机上可以正常工作,但是现在我需要将其移至新计算机上。它没有工作,我发现原因是因为第二个程序没有足够高的特权来工作。 (它适用于管理员CMD,但不适用于标准CMD)。
因此,起初我尝试在具有管理员权限的情况下运行Node脚本,因为我读过这会使
child_process.exec()
也具有它们,但它不起作用。用管理员权限运行此辅助程序的简单方法是什么?
最佳答案
要使用提升的特权运行CMD命令,可以使用以下命令:
powershell -Command "Start-Process cmd -Verb RunAs -ArgumentList '/c cd c:\location && command -argument'"
这是它的作用:
运行powershell命令(
powershell -Command
)以更高的特权(
CMD
)启动Start-Process cmd -Verb RunAs -ArgumentList
哪个运行命令(
/c cd c:\...
)
关于node.js - 如何使用NodeJS和child_process.exec以管理员身份运行程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57500736/