极客学校:学习powershell变量、输入和输出

随着我们从简单地运行命令转向编写完整的脚本,您将需要一个临时位置来存储数据。这就是变量的来源。...

极客学校:学习powershell变量、输入和输出

随着我们从简单地运行命令转向编写完整的脚本,您将需要一个临时位置来存储数据。这就是变量的来源。

请务必阅读本系列之前的文章:

  • 了解如何使用PowerShell自动化Windows
  • 学习在PowerShell中使用cmdlet
  • 学习如何在PowerShell中使用对象
  • 在PowerShell中学习格式化、过滤和比较
  • 学习在PowerShell中使用远程处理
  • 使用PowerShell获取计算机信息
  • 在PowerShell中使用集合

整个星期请继续关注本系列的其余部分。

变量

大多数编程语言都允许使用变量,变量只是保存值的容器。在PowerShell中,我们也有变量,它们非常易于使用。下面是如何创建一个名为“FirstName”的变量,并给它赋值“Taylor”。

$FirstName = “Taylor”

大多数人似乎首先会问的是,为什么我们要在变量名前加一个美元符号,这实际上是一个非常好的问题。实际上,美元符号只是对shell的一个小提示,我们希望访问变量的内容(想想容器中的内容),而不是容器本身。在PowerShell中,变量名不包含美元符号,这意味着在上面的示例中,变量名实际上是“FirstName”。

Advertisement

在PowerShell中,您可以看到在变量PSDrive中创建的所有变量。

gci variable:

极客学校:学习powershell变量、输入和输出

这意味着您也可以随时从shell中删除变量:

Remove-Item Variable:\FirstName

变量也不必包含单个对象;您可以同样轻松地将多个对象存储在一个变量中。例如,如果您想在一个变量中存储一个正在运行的进程列表,您可以将Get Process的输出赋给它。

$Proc = Get-Process

理解这一点的诀窍是记住等号的右边总是先求值。这意味着,如果您愿意,您可以在右侧拥有整个管道。

$CPUHogs = Get-Process | Sort CPU -Descending | select -First 3

CPUHogs变量现在将包含使用最多CPU的三个正在运行的进程。

极客学校:学习powershell变量、输入和输出

当您确实有一个包含对象集合的变量时,有一些事情需要注意。例如,对变量调用方法将导致对集合中的每个对象调用该方法。

$CPUHogs.Kill()

Advertisement

这将杀死集合中的所有三个进程。如果要访问变量中的单个对象,需要将其视为数组。

$CPUHogs[0]

这样做将得到集合中的第一个对象。

极客学校:学习powershell变量、输入和输出

别被抓住!

默认情况下,PowerShell中的变量是弱类型的,这意味着它们可以包含任何类型的数据,这似乎一直吸引着新加入PowerShell的人!

$a = 10

$b = ‘20’

所以我们有两个变量,一个包含字符串,另一个包含整数。如果你加上它们会怎么样?这实际上取决于你把它们加进去的顺序。

$a + $b = 30

$b + $a = 2010

在第一个示例中,第一个操作数是一个整数,$a,因此PowerShell认为您正在尝试进行数学运算,因此也尝试将任何其他操作数转换为整数。但是,在第二个示例中,第一个操作数是字符串,因此PowerShell只需将其余操作数转换为字符串并将它们串联起来。更高级的脚本程序通过将变量强制转换为期望的类型来防止这种gotcha。

[int]$Number = 5 [int]$Number = ‘5’

上述两种情况都会导致Number变量包含一个值为5的整数对象。

输入和输出

因为PowerShell是用来自动化的,所以您应该尽可能避免提示用户输入信息。话虽如此,有时您无法避免它,对于这些时候,我们有Read-Host cmdlet。使用它非常简单:

$FirstName = Read-Host –Prompt ‘Enter your first name’

极客学校:学习powershell变量、输入和输出

Advertisement

输入的内容将保存在变量中。

极客学校:学习powershell变量、输入和输出

使用Write-output cmdlet编写输出同样简单。

Write-Output “How-To Geek Rocks!”

极客学校:学习powershell变量、输入和输出

明天加入我们,把我们所学的一切联系在一起!

  • 发表于 2021-07-15 04:54
  • 阅读 ( 104 )
  • 分类:互联网

你可能感兴趣的文章

powershell foreach、while和其他循环的工作原理

学习编程的关键第一步是使用循环。谢天谢地,PowerShell将随着您的技能不断增长。 ...

  • 发布于 2021-03-11 23:17
  • 阅读 ( 451 )

如何将一个巨大的csv excel电子表格分割成单独的文件

... 三。使用powershell脚本来拆分csv文件 ...

  • 发布于 2021-03-12 16:05
  • 阅读 ( 707 )

可提高windows管理技能的powershell cmdlet

Powershell是一个完美的方式,一个新的编码器开始在Windows上。Powershell是命令行工具和脚本语言的等价部分。它使您能够通过您用来管理计算机的相同命令使计算机自动化。如果您有一个现代的Windows系统,那么您已经有了Powershell...

  • 发布于 2021-03-13 13:26
  • 阅读 ( 294 )

使用powershell而不是批处理脚本的5个原因

大多数用户从未听说过PowerShell,更不用说触摸它并试用了。这可能是因为这个名字,听起来像是只有铁杆IT极客才会使用的东西。或者是因为PowerShell的好处还不清楚。可能是因为最初的学习曲线。 ...

  • 发布于 2021-03-15 16:49
  • 阅读 ( 285 )

如何在linux上安装和使用powershell

Windows PowerShell是一个优秀的配置管理和自动化框架。它由命令行shell和基于.NET的脚本语言组成。管理员使用PowerShell作为管理Windows、Linux和网络客户端的一种手段。 ...

  • 发布于 2021-03-16 02:34
  • 阅读 ( 306 )

如何使用windows powershell发送电子邮件

...收件箱分心,Windows桌面上都有一个很有用的工具。它叫PowerShell。 ...

  • 发布于 2021-03-17 17:00
  • 阅读 ( 426 )

如何在windows powershell中使用命令历史记录

Windows PowerShell具有内置的命令历史记录功能,可提供有关已运行命令的详细信息。与命令提示符一样,PowerShell只记住当前会话的命令历史记录。 如何使用命令行缓冲区 相关:极客学校:学习如何用PowerShell自动化Windows PowerShel...

  • 发布于 2021-04-08 03:50
  • 阅读 ( 287 )

如何在windows中批量重命名多个文件

...可以轻松地重命名一个或多个文件,但使用命令提示符或PowerShell,您还可以执行更多操作。再加上第三方重命名工具,可能性是无穷的。让我们看看每个选项及其工作原理。 在windows资源管理器中重命名多个文件 Windows资源管...

  • 发布于 2021-04-08 21:05
  • 阅读 ( 208 )

如何在windows上创建已安装程序的列表

....1和7上执行此操作的几种不同方法。 简单的方法:使用powershell命令 相关:极客学校:学习如何用PowerShell自动化Windows PowerShell是Windows中最强大的工具之一,所以它当然可以做一些简单的事情,比如列出你安装的程序。事实上...

  • 发布于 2021-04-09 18:20
  • 阅读 ( 180 )

如何使用批处理文件使powershell脚本更易于运行

由于几个主要与安全相关的原因,PowerShell脚本不像批处理脚本那样易于移植和使用。但是,我们可以将批处理脚本与PowerShell脚本捆绑在一起,以解决这些问题。在这里,我们将向您展示一些问题领域,以及如何构建批处理脚本...

  • 发布于 2021-04-11 03:30
  • 阅读 ( 290 )
ijvr7821
ijvr7821

0 篇文章

相关推荐