.ps1文件是PowerShell写好的脚本文件。在Windows系统中,默认情况下是不允许执行.ps1文件的,那么怎么才能让系统允许执行.ps1文件呢?
什么是“.ps1”文件?
这个是PowerShell写的脚本文本,你可以在记事本中写一段PowerShell代码,然后将其保存为“xxx.ps1”,后面要使用它的时候,双击即可运行了。这有点像批处理的“.bat”文件,也有点像VBScript的“.vbs”文件。这些都是Windows的脚本文件。
如何执行“.ps1”文件?
接下来大家会问,那我们就双击它运行好了,还有什么好说的吗?当然要说。我们想得很美,双击一下就执行了,但是Windows系统默认是不允许执行.ps1文件的,所以你得往下看。
执行不成功的解决办法
1、将PowerShell的脚本内容保存到一个.ps1为后缀的文件中。
2、双击执行此ps1文件很有可能无法执行,提示:无法加载文件 D:\PowerShell\test\myfirst1.ps1,因为在此系统中禁止执行脚本。
3、运行get-executionpolicy,如果结果是Restricted,那表示禁止执行脚本。
4、执行如下命令,降低系统的安全性,允许执行脚本:set-executionpolicy -executionpolicy unrestricted
关于执行策略
这里有一个executionpolicy,翻译过来就是执行策略。Windows对PowerShell脚本默认的执行策略是:不允许执行,即Restricted。把它改成unrestricted自然就可以执行了。但微软给出的Best Practise(“最佳实践”)是RemoteSigned,这个级别比UnRestricted要高一点,不是什么程序都能执行。据我简单的了解,RemoteSigned是要求远程下载的ps1脚本文件必须是签名的才可以执行。至于我们在本机上自写的脚本程序,那是没有区别,都可以执行的。
修改执行策略需要权限
另外需要说明的是,如果是在Win7、Win8、Windows 2008、Windows 2012等系统上,且不是使用administrator账号来执行这个set-executionpolicy语句,将会报错,错误如下:
Set-ExecutionPolicy : 对注册表项“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell”的访问被拒绝。
这时候小编很疑惑,我使用账号虽然不是administrator,但也是administrators组的,为什么会没有权限呢?不管了,在注册表中,找到这个键,然后点右键选择“权限”,然后给当前登录系统的账号加一个“完全控制”的权限(只有“只读”和“完全控制”两个权限,所以就选“完全控制”了)。然后,再重新执行set-executionpolicy -executionpolicy unrestricted,就可以成功了!
相关推荐
将脚本文件放入默认路径下 以管理员权限打开powershell 开始自动安装 powershell美化
用win-acme给windows服务器添加SSL(Let's Encrypt)证书的Powershell脚本 腾讯云,腾讯域名使用 win-acme acme.sh
从Credential Manager导出Windows凭据的Powershell脚本 https://github.com/peewpw/Invoke-WCMDump PS>Import-Module .\Invoke-WCMDump.ps1 PS>Invoke-WCMDump powershell.exe "IEX (New-Object Net.WebClient)....
利用Powershell脚本连接VC或EXI服务器读取VM信息,并把VM信息及存储导出到指定excel中
微软官方提供的禁用 Credential Guard 或 Device Guard 的powershell脚本
BlackJack.PS1:2008脚本大赛的题 Number Puzzle.ps1:3-8列的数字拼图 PowerShell HELP.ps1:可以生成html版的powershell速成手册 PowerShell Script Encryption.ps1:用于加密.ps1脚本(防傻瓜化解密)
本文介绍在PowerShell脚本中,如何获取脚本文件(.ps1文件)所在的目录。本文介绍在方法适用于PowerShell 3.0。 在PowerShell 3.0中,有一个变量可以很方便的获取脚本所在的目录。我们在e:\ps\script1.ps1和script2....
利用Powershell脚本根据保存的VM信息加载到相应的VM Host中,并根据信息是否需新建盘,是否连网等。
脚本作者=我=powershell传教士 用法:ctracert.ps1 域名或ip 完成日期:2016-02-03 QQWry.NET.dll 是供.net调用纯真ip数据文件的dll库。来源于http://hjf1223.cnblogs.com/ ,感谢作者阿布(mvp) 2016-05-29 1.01版...
适用于Exchange 2019的健康检查powershell脚本。
Win-PS2EXE PS1到EXE编译器PS2EXE.ps1的图形前端作者:Markus Scholtes 版本:1.0.1.1 日期:2021-04-10 使用Ingo 最初创建的PS2EXE.ps1,您可以将Powershell脚本编译为实际的Windows可执行文件。 Win-PS2EXE是脚本...
PowerShell
Ps1 To Exe(将powershell脚本转为exe的工具)是一款可以帮助用户将 PowerShell 脚本转换为 EXE 可执行文件的小工具,能让 PowerShell使用起来更为便捷,本次带来Ps1 To Exe官方版下载,支持简体中文等多种语言,需要...
RedTeamPowershellScripts, 在 Windows 事件日志中搜索特定用户的脚本 红色团队Powershell脚本Search-EventForUser.ps1: Powershell script that search through the Windows event logs for specific u
在新的PowerShell安装上运行任何脚本之前,必须首先设置适当的执行策略,例如Set-ExecutionPolicy RemoteSigned PowerShell脚本等效于Windows CMD或MS-DOS批处理文件,该文件应以.ps1扩展名保存,例如MyScript.ps1 ...
自动下载和提取 Eric Zimmerman 工具的 PowerShell 脚本 例子 最简单的方法是右键单击并选择“使用 PowerShell 运行”。工具将保存到默认位置:C:\Forensic Program Files\Zimmerman 使用 -outDir 参数指定保存...
Ps1 To Exe(将powershell脚本转为exe的工具)是一款可以帮助用户将 PowerShell 脚本转换为 EXE 可执行文件的小工具,能让 PowerShell使用起来更为便捷,本次带来Ps1 To Exe官方绿色免安装版下载,支持简体中文等多种...
1)在 windows7 上编写 C:\CreateFile.ps1 的 powershell 脚本请使用两位四进制的方式在C:\file 下创建 16 个文件,文件命名为testxx.txt,其中 XX为 00、01、02、03、10、11、12、13、20.....32、33。如果文件和...