全网详细解决:无法将 “xxx” 项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次

1. 复现问题


今天,使用如下命令在Windows PowerShell中执行时:

telnet 127.0.0.1 80

却报出如下错误:

在这里插入图片描述

PS C:\Users\zxy> telnet 127.0.0.1 80
telnet : 无法将“telnet”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ telnet 127.0.0.1 80
+ ~~~~~~
    + CategoryInfo          : ObjectNotFound: (telnet:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

为什么会报出这个错误?接下来我便详细分析和解决。

2. 分析问题


首先,我们使用如下命令:

Get-ExecutionPolicy -List

查看当前所有作用域,如下图所示:

在这里插入图片描述

你会发现,如上最后一个作用域有权限,其他作用域都没有权限,那么,我们就需要去给它设置权限。

3. 解决问题


首先,在左下角搜索框输入Windows PowerShell,如下所示:

扫描二维码关注公众号,回复: 14639769 查看本文章

在这里插入图片描述

若你不想使用搜索框,可以直接按window + r ,输入PowerShell(蓝色运行屏幕), 也可以cmd(黑色运行屏幕),点击确定即可:

在这里插入图片描述

如果你还没安装Windows PowerShell,可以点击该链接安装:下载安装Windows PowerShell教程。

我们以管理员身份打开Windows PowerShell,可以使用如是Set-ExecutionPolicy RemoteSigned -Scope < scopeName >命令,给其设置权限,比如给CurrentUserscope设置权限:

PS C:\Users\zxy> Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

执行策略更改
执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies
帮助主题所述。是否要更改执行策略?
[Y](Y)  [A] 全是(A)  [N](N)  [L] 全否(L)  [S] 暂停(S)  [?] 帮助 (默认值为“N”): A

在这里插入图片描述

我们再次输入如下命令,查看CurrentUser是否有权限。

在这里插入图片描述

你可以清晰地看到,CurrentUser已经有用权限了。

按照上面的格式,执行需要加权限的作用域,然后再去尝试之前的方法,发现就不会报错提示了。

如果你的问题不是通过我的方法解决的,麻烦在评论区留言,大家共同进步。

猜你喜欢

转载自blog.csdn.net/lvoelife/article/details/129141605