使用节点设置Windows PATHvariables?

我试图首先检查一个文件夹是否是%PATH%variables的一部分,如果没有,请添加它。 不幸的是,这个问题很难查找,因为所有的Google结果都不可避免地将npm包含在%PATH%中。 由于刷新%PATH%需要2-3分钟的重启周期,因此testing和试验的速度非常慢。

require('child_process').exec('setx PATH "%PATH%;C:\\testpath"')似乎只是添加C ,而没有别的。 有没有更好的方法来做到这一点?

我有一个快速运行您的行,并添加了一些console.logs:

 stdout: SUCCESS: Specified value was saved. stderr: WARNING: The data being saved is truncated to 1024 characters. 

我也尝试添加/ M,它并没有帮助。

看来是这个问题是截断到1024个字符。 一个快速的研究给了我这个:

https://superuser.com/questions/387619/overcoming-the-1024-character-limit-with-setx

看来你可以通过直接写入registry来强制PATH超过1024个字符,但它可能会导致一些应用程序崩溃,而且是不受监督的。