默认是禁止脚本运行,想要修改允许脚本运行,需要以管理员权限运行powershell,但有时候我们没有管理员权限,只有普通用户权限,这样就没有办法设置允许脚本运行,这时,cmd中运行脚本的优势就体现出来了。在cmd中运行脚本可以绕过powershell的限制。
自动化命令查看并统计在powershell有别名的cmd下的命令(cmd的命令可以在powershell下运行并且在powershell下有别名)
代码如下:
<自动化命令查看并统计在powershell有别名的cmd下的命令(cmd的命令可以在powershell下运行并且在powershell下有别名)
=cmd /c help 一个数组对象
=.count-3
=0
( [1..=.split()[0] 一个值(命令名称)
( )
=get-alias -erroraction silentlycontinue 错误不显示,继续执行
($?)
.displayname 一个对象
+=1
-host
pause
2.运行方式有两种,一种是powershell中运行,另一种在cmd中
2.1(cmd)本地权限绕过执行:PowerShell.exe -ExecutionPolicy Bypass -File xxx.ps1
可以看到直接在cmd下执行powershell脚本,绕过了powershell对ps1脚本执行的限制(在某些情况下相当有用)
2.2在powshell下执行
可以看到当前脚本的执行权限是限制,当想修改脚本的执行权限时,只能以管理员打开powershell,在某些情况下无法实现管理员修改,这时候只能通过cmd运行脚本了
以管理员运行powerrshell之后,设置脚本的运行策略
3.设置完脚本的运行策略之后,就可以运行脚本了
4.隐藏脚本到后台
powershell -WindowStyle hidden -ExecutionPolicy Bypass -file xxx.ps1
运行完隐藏的命令之后,脚本窗口便消失了,只有后台能看到脚本正在运行
5.想要退出隐藏,可以在任务管理器结束powershell进程