Windows怎么用PowerShell执行脚本_Windows如何运行ps1格式的PowerShell脚本文件【基础】

Windows怎么用PowerShell执行脚本_Windows如何运行ps1格式的PowerShell脚本文件【基础】

电脑数码

需修改PowerShell执行策略为RemoteSigned,再通过PowerShell窗口、命令行或右键菜单运行.ps1脚本,并确保脚本编码为UTF-8 with BOM或ANSI。

如果您在Windows系统中创建了一个.ps1格式的PowerShell脚本文件,但双击无法运行或提示“无法加载文件,因为在此系统上禁止运行脚本”,则说明PowerShell执行策略限制了脚本运行。以下是启用并执行.ps1脚本的具体操作步骤:

一、修改PowerShell执行策略

PowerShell默认执行策略为Restricted,禁止运行本地脚本。需临时或永久调整策略以允许脚本执行,同时确保操作在受信任环境中进行。

1、以管理员身份运行PowerShell:点击“开始”→搜索“PowerShell”→右键“Windows PowerShell”→选择“以管理员身份运行”。

2、查看当前执行策略:输入命令 Get-ExecutionPolicy 并按回车。

3、将执行策略设为RemoteSigned(推荐):输入命令 Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 并按回车;系统提示确认时输入 Y

4、验证设置是否生效:再次运行 Get-ExecutionPolicy -Scope CurrentUser,返回值应为 RemoteSigned

二、在PowerShell中直接调用.ps1脚本

执行策略调整后,可在PowerShell会话中通过完整路径调用脚本,避免因路径含空格或特殊字符导致解析失败。

1、进入脚本所在目录:使用 cd "C:MyScripts" 切换到脚本存放路径(注意路径用英文双引号包裹)。

2、执行脚本:输入 .myscript.ps1 并按回车(必须包含 . 前缀,否则系统将尝试从PATH中查找命令)。

3、若脚本位于其他位置,可直接使用绝对路径:例如 & "D:Toolsdeploy.ps1"& 是调用运算符,支持含空格的完整路径)。

三、通过命令行启动PowerShell并执行脚本

无需预先打开PowerShell窗口,可从CMD或运行对话框(Win+R)一次性完成启动与执行,适用于批处理集成或快捷方式场景。

1、按下 Win + R 打开“运行”对话框。

MewXAI

一站式AI绘画平台,支持AI视频、AI头像、AI壁纸、AI艺术字、可控AI绘画等功能

下载

2、输入以下命令并回车:powershell -ExecutionPolicy Bypass -File "C:path oscript.ps1"(其中 Bypass 仅对本次会话临时绕过策略,不更改系统设置)。

3、若脚本路径含空格,必须用英文双引号包裹 -File 参数值,且双引号内不得嵌套双引号。

四、右键菜单快速执行.ps1脚本

为提升日常使用效率,可向资源管理器右键菜单添加“在此处运行PowerShell脚本”选项,实现一键调用。

1、新建一个文本文件,将后缀改为 .reg,例如 AddPs1Run.reg

2、用记事本打开该文件,粘贴以下内容(注意替换实际路径中的反斜杠为双反斜杠):Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOTMicrosoft.PowerShellScript.1ShellRunPs1Command]
@=""C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -ExecutionPolicy Bypass -File \"%1\""

3、双击运行该.reg文件,确认导入注册表;之后在任意.ps1文件上右键即可看到新增的执行项。

五、检查脚本编码与BOM格式

PowerShell对UTF-8编码的.ps1文件要求严格:若脚本以UTF-8 with BOM保存,通常可正常识别;若为UTF-8无BOM或UTF-16格式,可能导致语法错误或乱码。

1、用记事本或VS Code打开.ps1文件,点击右下角编码标识(如“UTF-8”)。

2、选择“另存为”→在保存对话框中点击“编码”下拉菜单→选择 UTF-8 with BOMANSI(中文Windows推荐ANSI)。

3、保存后重新执行脚本,观察是否仍报错 Unexpected token 或中文显示异常。

本文地址:https://www.sztg.com.cn/article/588209.html

如非特殊说明,本站内容均来自于网友自主分享,如有任何问题均请联系我们进行处理!

猜您喜欢