PowerShell脚本开机自启动
家里有两台台式机,性能还不错,尤其是其中一台机器插了64GB内存,适用于某些内存消耗量大的工作。因此,我打算做内网穿透,以便在外工作时随时连回家里机器。
配置好frp之后,测试OK,可以从外网访问内网机器。但是问题来了,我下载的frp windows客户端没有开机自启动的选项,它的启动方式是在CMD或PowerShell中输入命令./frpc -c frpc.ini。
如何在系统开机后(而非登录后)自动运行这段PowerShell脚本呢? 方法很简单,写一个PowerShell脚本文件,通过PowerShell命令将其设置为开机自启动即可。
- PowerShell脚本文件
打开记事本,输入启动新frpc进程的命令:
start-process -FilePath C:\frp\frpc.exe -ArgumentList "-c C:\frp\frpc.ini" -WindowStyle Hidden
将此文件存为frpc.ps1脚本文件。 - 开机时自动运行PowerShell脚本
由于Windows系统默认策略不允许随意运行脚本文件,所以要更改一下:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope LocalMachine
定义触发器,设置定时任务:
$trigger = New-JobTrigger -AtStartup -RandomDelay 00:00:30
Register-ScheduledJob -Trigger $trigger -FilePath C:\frp\frpc.ps1 -Name StartFrpc
参考资料: