win10开机启动ps1脚本
导语:需要通过管理员运行powershell,在里面输入一些命令。打算通过开机启动cmd脚本,通过cmd脚本 执行ps1脚本
问题:单独执行脚本会报错。
解决方式
需要在注册表的如下位置HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run创建字符Shadow,值为cmd脚本的位置。
以下是cmd脚本鹿筋
C:\Users\Administrator\Desktop\Shadow.cmd
打开powershell,采用unrestricted形式(否则无法执行脚本)
@set Path=%Path%;%SystemRoot%\system32\WindowsPowerShell\v1.0\& powershell -ExecutionPolicy Unrestricted "C:\Users\Administrator\Desktop\init.ps1"
exit
init.ps1脚本如下
# 获取 Windows 和 WSL2 的 ip
# $winip = bash.exe -c "ip route | grep default | awk '{print `$3}'"
# default via 172.20.16.1 dev eth0
$winip = bash.exe -c "ip route | grep default |cut -d ' ' -f 3"
# $wslip = bash.exe -c "hostname -I | awk '{print `$1}'"
# 172.20.30.87 172.16.10.174 172.18.0.1 172.17.0.1
$wslip = bash.exe -c "hostname -I |cut -d ' ' -f 1 "
$found1 = $winip -match '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}';
$found2 = $wslip -match '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}';if( !($found1 -and $found2) ){# 如果没找到 wsl 的 ip, 就退出执行echo "The Script Exited, the ip address of WSL 2 cannot be found";exit;
}# 你需要映射到局域网中端口
$ports=@(80,81,22222,22,800,11380,11381);# 监听的 ip,这么写是可以来自局域网
$addr='0.0.0.0';
# 监听的端口,就是谁来访问自己
$ports_a = $ports -join ",";# 移除旧的防火墙规则
iex "Remove-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' " | Out-Null# 允许防火墙规则通过这些端口
iex "New-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' -Direction Outbound -LocalPort $ports_a -Action Allow -Protocol TCP" | Out-Null
iex "New-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' -Direction Inbound -LocalPort $ports_a -Action Allow -Protocol TCP" | Out-Null# 使用 portproxy 让 Windows 转发端口
# https://docs.microsoft.com/en-us/windows-server/networking/technologies/netsh/netsh-interface-portproxy
for( $i = 0; $i -lt $ports.length; $i++ ){$port = $ports[$i];iex "netsh interface portproxy delete v4tov4 listenport=$port listenaddress=$addr" | Out-Nulliex "netsh interface portproxy add v4tov4 listenport=$port listenaddress=$addr connectport=$port connectaddress=$wslip" | Out-Null
}
添加开机启动
搜索计算机管理 选择任务计划任务
以下面模版创建任务
缺点:每次开机会打开ps1这个脚本文件。容易被人手滑修改。
参考
https://www.programminghunter.com/article/19961163124/
https://zhuanlan.zhihu.com/p/20628937
https://blog.minifish.org/posts/powershell-starttup/
https://blog.csdn.net/Jmilk/article/details/50661936
win10开机启动ps1脚本相关推荐
- CentOS 7添加开机启动服务/脚本
CentOS 7添加开机启动服务/脚本 一.添加开机自启服务 在CentOS 7中添加开机自启服务非常方便,只需要两条命令(以Jenkins为例): systemctl enable jenkins. ...
- Android8.0 开机启动脚本,Android开机启动shell脚本(Android 8.0测试OK)
Android 下做开机启动shell脚本的大致流程如下: 目录 写shell脚本 为脚本写te文件 在init.rc中启动脚本 添加Selinux权限 写shell脚本 比如新建一个init.tes ...
- 详解win10开机启动慢是什么原因怎么解决
win10系统的特点就是开机速度快,但是有网友却反映自己的win10开机启动慢是什么原因呢?如何解决呢?一般造成这种情况的原因主要有几种,今天小编就给大家分析下win10开机启动慢的原因和解决方法. ...
- win10开机启动慢如何解决?三种方法帮你解决!
win10开机启动慢如何解决?win10系统的特点就是开机速度快,但是有网友却反映自己的win10开机启动慢是什么原因呢?如何解决呢?一般造成这种情况的原因主要有几种,今天小编就给大家分析下win10 ...
- win10开机启动文件夹路径
win10开机启动文件夹路径是什么: 1.路径:[C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp] 2.快捷命令:按下[win ...
- 【开机启动】win11开机启动软件,win11开机启动bat脚本(开机启动vbs文件)
目录 编辑bat脚本 编辑vbs脚本 让vbs脚本开机启动 编辑bat脚本 简单介绍一下 ::是注释前缀 echo 是输出内容到控制台,等同于print @echo off可以关闭路径显示,自己尝试写 ...
- win10开机启动项(win10开机启动项无法启动)
win10怎样把qq放到开机启动项里 方法二:以前XP.W7系统的开始菜单上有"启动"项供使用,到了W10系统,开始菜单取消了此选项,但我们将QQ的桌面快捷方式复制到"启 ...
- Skill: win10: 开机启动项管理配置
win10 开机启动项管理配置 开始 – 运行 – msconfig – 启动 – 打开任务管理器 – 启用/禁用各种开机启动项
- Ubuntu 16.04设置rc.local开机启动命令/脚本的方法
Ubuntu 16.04设置rc.local开机启动命令/脚本的方法(通过update-rc.d管理Ubuntu开机启动程序/服务) 注意:rc.local脚本里面启动的用户默认为root权限. 一. ...
- Android 开机启动shell脚本
接到一个集成功能的需求,然后看了一下是由上层应用 + linux进程实现的功能,需要增加开机自动启动linux进程,没弄过有点懵. 这个不怎么正确,仅供参考,在权限那块需要更改,放到system下 环 ...
最新文章
- 循环神经网络(RNN、LSTM、GRU)
- 20181110-软件开发架构2
- Kubernetes — 容器设计模式
- KVM 介绍(4):I/O 设备直接分配和 SR-IOV [KVM PCI/PCIe Pass-Through SR-IOV]
- Cisco 交換機命名規則
- IDEA 调试Spring-boot 应用
- 动画 java_Java动画程序介绍
- SpringBoot - 优雅的实现【流控】
- 牛客练习赛46T1-华华教奕奕写几何【数学】
- python 画折线图_Python让你的数据生成可视化图形
- 数据库系统中数据抽象的三级结构
- windows下的IO模型之完成端口
- 为什么线程池里的方法会执行两次_别以为线程池很简单,来回答下这些问题!...
- Html文档与基本语法和规范
- BXP千兆无盘网吧解决方案(转)
- 【python 数据分析】不同情况下的t检验、Wilcoxon符号秩检验、Wilcoxon秩和检验、卡方检验、Fisher检验
- 一枚namecheap续费可用的优惠码
- cobbler源码安装
- 五款最优秀的java微服务框架
- 《国度》之大学者联盟全解