Electron 执行 powershell 脚本

Electron executing powershell script

我想在电子应用程序启动时执行一个 powershell 脚本。我尝试将以下内容添加到 index.html 中的 <head> 中:

<head>
<script type="text/javascript">
    var spawn = require("child_process").spawn;
    spawn("powershell.exe",[".\myPSScript.ps1"]);       
</script>
</head>
<body>
...
</body>

这没有用。添加时:

document.write("Hello")

它显示在应用程序中,所以我可以确定 <script> 是 运行。当我 运行 来自 powershell-terminal 的脚本本身时,它 运行 没有任何问题并且做了它应该做的事情。

我也试过给出绝对路径:

spawn("powershell.exe",["C:\folder\folder2\myPSScript.ps1"]);       

该脚本会删除计算机上某个文件夹中的所有 .db 个文件。

Get-ChildItem -Path 'MY_Wonderfull_Path' *.db | Where-Object { $_.CreationTime -lt (get-date 2021-09-09) } | foreach { Remove-Item -Path $_.FullName }

我不知道为什么它不是 运行ning。电子不能产生新的子进程吗?是不是权限问题?

应要求,这里是我的评论作为回答。

您需要将路径中的反斜杠加倍以对其进行转义。

spawn("powershell.exe",["C:\folder\folder2\myPSScript.ps1"]);