当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

作者:精品下载站 日期:2024-12-14 07:24:21 浏览:13 分类:玩电脑

PowerShell 初学者(第 2 部分):动词-名词哲学


现在,在第一部分 PowerShell 初学者(第 1 部分):控制台和第一个命令之后,我们将专注于命令。但在我们开始第一个练习的答案之前。我们还对第一部分进行了简要回顾。

该系列的所有部分都可以在这里找到:PowerShell 初学者(系列)

评论(第 1 部分)

锻炼

在第一部分中,我询问如何请求确认“停止计算机”命令。

找出关闭计算机之前要求确认的参数。

(提示:键入 Stop-Computer -,然后按 TAB)。解决方案可以在下一篇文章中找到,但我想你会自己找到答案?记住实践代码!

如果您遵循我的提示,那么您会发现有一个名为“Confirm”的参数。打开 Windows PowerShell。输入停止计算机。然后输入 - 并按 TAB。按几次后,您将看到“确认”参数。


Stop-Computer -Confirm

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

概括


PowerShell 是一种适用于 Windows 和(即将推出)Linux 的专业自动化脚本语言。可以使用 Windows 搜索找到 PowerShell。每个 PowerShell 命令都由一个动词和一个名词组成。


哲学:动词-名词

我们现在进入该系列的第二部分。在本节中,我们将重点关注 PowerShell cmdlet。具体来说,就是这些命令的哲学。每个称为 cmdlet 的 PowerShell 命令都包含一个动词和一个名词,并用连字符分隔。记住我们的第一个命令 Stop-Computer。 Stop 是动词,Computer 是名词。以下是这种哲学或命名约定的一些示例:


Get-Date

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学


Get-Process

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学


Start-Process 'https:\a-d.site'

最后一条命令打开我的网站。 Start-Process 启动一个进程。如果您指定一个网站,该命令将打开一个 Web 浏览器并让您访问我的网站。

到目前为止我们学到了什么?


每个名为 cmdlet 的 PowerShell 命令都包含一个动词和一个名词,并用连字符分隔。


一个重要的 PowerShell cmdlet:Get-Command

这将我带到命令 Get-Command。 Get-Command 使您能够一次显示所有可用的 PowerShell 命令。让我们探索所有 PowerShell 命令。

类型


Get-Command

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

有很多。为了让整个事情更加清晰,我们可以使用一个特殊的方法。为此,我们需要一个管道和命令 more。管道连接命令。具体而言,管道获取管道左侧的所有内容并将其转发给管道右侧的命令。您可以在键盘上找到管道。不幸的是,每个键盘都略有不同。注意此图标或按 ALT + 124。

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

稍后我们将重点关注管道。目前管道的目的是中断屏幕的输出。类型


Get-Command | more

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

屏幕的尽头发生了一些事情。还有一个说法。如果按 Enter 键,输出将扩展一行。如果按空格键,整个屏幕都会跳转。

现在按 CTRL + C。这将停止 Get-Command。

到目前为止我们学到了什么?


Get-Command 显示所有可用的 PowerShell 命令。使用 more 函数(和管道),您可以停止将所有内容匆忙地通过控制台窗口。 CTRL+C 停止每个命令。


如何通过动词或名词获得命令?

我总是建议首先使用“get”命令。为什么?你不能破坏你的系统。获取命令只能获取某些内容,不能修改。因此,这部分的任务是找到所有“get”命令。记住:Get 是动词。让我们使用一个简单的参数来搜索所有的获取。类型


Get-Command -Verb Get

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

好的。发现一些有趣的东西?我愿意。获取主机。


Get-Host

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

Get-Host 向您显示有关系统的信息,尤其是 PowerShell 的信息。例如,您可以查看您的 PowerShell 版本。我的是5.1。这只是对特定 Get 命令的快速浏览。让我们继续名词。

要查找具有特定名词(例如名词日期)的命令,请运行


Get-Command -Noun Date

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

我使用这个名词并非巧合。 Date 仅包含 2 个命令。这并没有使它变得太广泛。

到目前为止我们学到了什么?


获取命令无法破坏您的系统。要查看带有特定动词的命令,请运行 Get-Command -Verb。要搜索特定名词,请运行 Get-Command -Noun。 Get-Host 显示有关 PowerShell 版本的信息。


使用制表符

一个很好的功能是使用 TAB。如果您对该名词一无所知,请键入 Get-Command -Noun 并按 TAB 键。不幸的是,这只适用于名词。

标签

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

如何使用通配符列出命令

通配符是任何值的占位符。通配符通常为*。如果您不满意通过动词或名词搜索,您可以简单地使用通配符。例如,我不知道重新启动计算机的命令。让我们搜索包含“重新启动”一词的命令。好的,好的,我明白了,您想按动词搜索。不,这不是本部分的任务。 ?


Get-Command *Restart*

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

很高兴我们找到了它。这是重新启动计算机。

审查


通配符 (*) 是任何值的占位符。最重要的是,它们使搜索更加灵活。尽可能使用 TAB 进行探索。


组合两个命令(一小时内重新启动计算机)

这是这篇博文的最后一部分。你喜欢睡觉吗?是的? PowerShell 也喜欢它。键入 Start-Sleep 并指定时间跨度(以秒为单位)。


Start-Sleep -Seconds 10

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

PowerShell 进入睡眠状态。 10 秒钟。

让我们提前想一下。我们现在可以组合两个命令。第一个是开始睡眠。第二个是重新启动计算机。目标是在大约一小时内关闭计算机。为此,我们需要一个分隔符,将两个命令彼此分开。这是一个点逗号。类型


Start-Sleep -Seconds 3600; Restart-Computer

[玩转系统] PowerShell 初学者(第 2 部分):动词-名词哲学

如您所见,PowerShell 进入睡眠状态 3600 秒。在此期间之后,计算机将重新启动。相信我,它会发生!前提是您不关闭 PowerShell。在计划任务中计划这一点无论如何都是更好的解决方案。但这是更高级的博客文章的主题。

好吧,我们已经学会了如何停止命令。按 CTRL + C 停止休眠和重新启动的时间表。或者等待并看到您的计算机在配置的时间跨度后关闭。

审查


点分逗号可让您输入多个命令。这些命令将被一个接一个地执行。 Start-Sleep 可以帮助您安排命令的执行或等待特定时间。


锻炼

请记住我们的行为准则:


自己动手。任何你自己不做的事情很快就会被忘记。


下一部分的练习是:

找出对进程执行某些操作的命令。我的意思是 Windows 进程。使用 Get-Command(搜索带有通配符或 TAB 的名词)来查找所有这些。然后打开记事本。尝试使用 PowerShell 关闭此记事本进程。

下次再见《PowerShell 初学者(第 3 部分):参数》一文。


Patrick Gruenauer,PowerShell MVP

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯