所有 Windows 用户都应该知道的 10 个简单 PowerShell 命令


电源外壳 为您提供对 Windows PC 所需的所有控制,并且易于学习。因此,放弃 命令提示符 并使用 Windows PowerShell 命令自动执行这些重复的管理任务。

学习 PowerShell 还将教您如何在 bash shell 中处理大多数 Linux 管理任务。 PowerShell 与您在大多数 Linux 发行版 中发现的类似。

什么是 PowerShell?

Windows PowerShell 是 Microsoft 为系统管理员开发的命令行界面和脚本语言。但您不必成为管理员或程序员即可使用它,因为它比其他编程语言简单得多。它与普通英语类似,每个人都可以理解它并用它来管理自己的计算机。

Windows PowerShell 中使用的命令称为“cmdlet”。它们将允许您在计算机上激活特定操作或一系列操作。这些操作可以很简单,例如登录无线网络,也可以更复杂,例如自动执行特定的重复任务。

要打开 PowerShell,请按开始 按钮,在搜索框中键入“powershell ”,然后选择Windows PowerShell 。您将打开命令行界面,您可以在其中开始输入命令。

在本文中,我们将介绍十多个最有用且最简单的 PowerShell 命令。

1。获取帮助

Get-Help cmdlet 是 PowerShell 中的一个很好的起点。它概述了您可以执行的操作,并且当您需要有关特定 cmdlet 的更多信息时也非常有用。

只需打开 PowerShell 窗口并输入 Get-Help 。这将打开一个全面的概述,教您什么是 PowerShell,并且您将了解它的功能和结构。您还可以直接通过界面访问网络以获取更高级的帮助文件。您可以下载这些文件以供以后使用。

但这并不是 get-help 命令的结束。类型:

获取帮助 * 

PowerShell 将列出您当时可以使用的所有 cmdlet。该列表可能会很大,您不需要了解所有显示的 cmdlet。但请随意阅读它们并探索您可用的所有可能性。.

类型:

获取帮助<命令名称>

您不需要括号,只需键入您感兴趣的命令的名称,此 cmdlet 将为您提供有关该命令的基本信息。有关命令的更详细说明,请键入:

Get-Help <命令名称>-Full

如果您需要如何使用特定命令类型的示例:

Get-Help <命令名称>-示例

2。获取命令

您想快速检索有关特定命令或命令集的信息吗? Get-Command cmdlet 将为您执行此操作。 Get-Command 中有很多选项,但作为 PowerShell 的基本用户,您并不需要其中的大部分选项。以下是一些有用的基本 cmdlet,尤其是在浏览可用命令时。

如果您想要相同类型的特定 cmdlet 列表:

获取命令 -<命令类型>

例如,这个复杂的短语将命令您的计算机显示所有可用 cmdlet 类型命令的列表,并按名称中名词的字母顺序对它们进行排序:

Get-Command -Type Cmdlet |排序对象-属性名词|格式表-GroupBy名词

这是一个更复杂命令的绝佳示例,它将使 PowerShell 执行复杂的任务。一旦理解了语法,您就会发现使用 PowerShell 通常是在计算机上完成某些操作最快且最简单的方法。

如果您想通过名称查找特定命令,只需键入:

Get-Command -Name <命令名称>

如果您不知道要查找的命令的确切名称,但知道该名称的一部分,则可以输入:

Get-Command -Name <命令名称>-UseFuzzyMatching

此 cmdlet 将要求您的计算机查找与您在 字段中键入的内容密切匹配的命令。如果您容易出现拼写错误并且不想一直纠错,您也可以使用此 cmdlet。

3。获取内容

如果您想查看文件的内容,请使用 Get-Content cmdlet。您需要指定该文件的确切位置,以便您的计算机可以找到它。.

在上面的示例中,您可以看到为此目的而创建的测试文本文件的内容。这是一个简单的命令,但如果您知道它的作用,则可以将其与其他命令结合使用,并通过 Windows PowerShell 执行真正强大的任务。

4。获取进程

Get-Process cmdlet 将为您提供有关计算机上当前正在运行的进程的信息。您可以查看内存使用情况、CPU 周期、进程 ID 和其他属性。

如果将进程的名称添加到此 cmdlet,您可以看到有关特定进程的信息。例如,如果您想了解有关 Discord 申请流程的信息,只需键入Get-Process Discord

您只需替换语法的“Get”前缀即可通过 PowerShell 启动或停止进程。要启动进程,请键入:

Start-Process <进程名称或 ID>   

要停止进程,请键入:

停止进程<进程名称或ID>

5。获取服务

作为系统管理员,您可能会发现 Get-Service cmdlet 非常有用。这个简单的 cmdlet 将显示系统上当前运行的所有服务并允许您控制它们。这意味着您可以看到当前正在运行的所有程序以使您的计算机运行。

现在您可以使用服务名称来控制它。使用诸如 Restart-Service <服务名称> 之类的命令来取消冻结的服务,使用 Stop-Service <服务名称> 来完全停止它们,以及 Start-Service 再次启动它们。

6。获取项目

如果您需要特定项目,通过 PowerShell 查找它可能比使用操作系统中集成的搜索栏更快。如果您知道所需文件的位置,这会特别方便。只需这样使用命令即可:

获取项目 C:

这将为您带来“C:”硬盘中的文件列表。您可以更具体地搜索用户个人资料下的所有目录,或者更深入地搜索“文档”或“下载”目录。为此,请键入:

Get-Tem C:\users\<用户名>\* .

如果需要从容器(例如系统目录)检索子项,可以使用 cmdlet Get-ChildItem 。此命令将显示该容器内的所有文件和目录。与 Get-Item cmdlet 一样,您需要指定容器的路径。

要删除项目,您可以将“获取”后缀替换为“删除”。这将允许您删除所有内容,从文件和文件夹到注册表项和功能。输入删除项目<位置\名称> 。您可以详细说明此 cmdlet,仅删除隐藏文件和“只读”文件,或删除特定文件夹和子文件夹中的项目。

7。转换为 Html

此命令将帮助您将 .NET 对象转换为可在 Web 浏览器中显示的 HTML 文件。这是一个输出 cmdlet,这意味着它可以与其他 cmdlet 配合使用。只需将其添加到其他 cmdlet 的末尾并包含特定的文件路径即可。

例如,如果您要创建一个 HTML 文件来显示本地计算机当前所有进程的名称、路径和公司,请键入:

获取进程 | ConvertTo-Html -属性名称、路径、公司 -标题“流程信息”|输出文件 filename.htm

将 filename.htm 替换为您想要的任何文件名。

要打开创建的文件,请使用Invoke-Item cmdlet 加上<文件名.htm> 。内容应如下图所示。

8。设置执行策略

如果您想运行本地PowerShell脚本,则必须更改PowerShell本身的执行策略。在 Windows 计算机上,执行策略始终受到限制,您需要将其更改为 RemoteSigned 或 Unrestricted。在非 Windows 计算机(例如 Linux 或 Mac)上,它通常设置为“无限制”,并且无法更改。

如果您想了解有关 PowerShell 执行策略的更多信息,只需键入:

帮助设置执行策略

PowerShell 将显示有关您计算机上的执行策略的帮助文件,如果没有则通知您。但它还会为您提供一个链接,您可以点击该链接并在线阅读相关内容。.

要将策略设置为 RemoteSigned,只需键入:

设置执行策略远程签名

要将其设置为无限制类型:

设置执行策略不受限制

要检查执行策略的当前设置,请键入:

获取执行策略

由于执行策略是 PowerShell 安全策略的一部分,因此它会要求您确认更改。仅当您确定要继续时才键入Y

9。选择对象

此命令用于选择对象和对象集、唯一对象以及数组中特定位置的对象。您可以使用不同的参数来指定要选择的对象。其中包括属性、数值和特定的输入对象。

要按属性选择对象,您需要指定名称、ID 或 CPU 等属性。您甚至可以对属性进行分组,但在输入命令时必须用逗号分隔它们。要查看操作中的 Select-Object cmdlet,请键入:

获取进程 |选择对象-属性进程名称、ID、CPU

PowerShell 将列出当前所有进程及其属性,如下所示。

您现在可以使用 -EpandProperty 命令获取有关特定属性的详细信息。如果您想要有关 ProcessName 属性类型的 Modules 属性的详细信息:

获取进程 Chrome |选择对象 -Property ProcessName -ExpandProperty 模块 |格式列表

命令的“Format-list”输出用于使结果格式化且可读。

10。导出-CSV

有时,PowerShell 命令会产生很长的列表,正如我们在 Get-Command cmdlet 中看到的那样。长列表和大量信息很难阅读,您需要以更有条理的方式进行阅读。为此,请将所有数据导出到 CSV 文件中。您可以使用 Export-CSV 函数直接在 PowerShell 中执行此操作。

例如,我们看到 cmdlet Get-Command 为我们提供了当时可以在 PowerShell 中使用的所有可用 cmdlet 的长列表。您可以结合使用 Get-Command 和 Export-CSV 创建包含逗号分隔值的详细列表,例如 Excel 等应用程序可以识别的名称、来源和版本。.

为此,请在 PowerShell 命令提示符中键入以下命令,但请注意,您可以设置所需的任何路径,并且可以以不同的方式命名文件:

获取命令 |选择名称、来源、版本 |导出 csv D:\AllCommands.csv

您现在可以在 Excel 中打开该列表,您应该会看到类似于下图的内容。

.

相关文章:


28.06.2022