powershell是什么软件(powershell百科)

hao333 6340 7658

刚刚升级了windows10系统的用户总是对新系统充满好奇。比如很多用户都在问win10中的Windows PowerShell是什么,是做什么的。

为了帮助您更好地了解win10系统,下面,边肖将为您介绍win10系统中Windows PowerShell的相关信息。

PowerShell是什么:

PowerShell首先是一个外壳,定义了一堆命令与操作系统,尤其是文件系统交互,可以启动甚至操纵应用。PowerShell还允许在一个文件中组合和执行几个命令。

实现文件级重用,即具有脚本的性质。而PowerShell可以充分利用。Net类型和COM对象来简单地与各种系统进行交互,并完成各种复杂的自动化操作。

1.与文件系统交互并运行应用程序。

就像在Dos下一样,在PowerShell的交互界面上输入‘dir’并回车,就会显示当前文件夹下的子文件夹和文件信息。

复制代码代码如下:

PS D:ProjectsPractisePowerShell dir Directory: D:ProjectsPractisePowerShell Mode LastWriteTime Length Name---- ------------- ------ ----d---- 1/23/2013 12:35 PM d1d---- 1/23/2013 12:35 PM d2-a--- 1/21/2013 8:38 PM 36314 alias.tx-a--- 1/21/2013 8:32 PM 241530 cmdlets.-a--- 1/18/2013 10:18 AM 888 errors.t

像这样的命令有很多,比如echo 'Hello 'cd.诸如此类。从这个角度来说,它是一个命令行,实现了原来命令行的功能。但是PowerShell是命令行的增强版,是命令行的超集吗?这真的不是,

这个问题以后再说。

就像在命令行上运行应用程序一样,您可以在PowerShell的交互窗口中运行应用程序,如下所示:

复制代码代码如下:

PS C:Usersv-lukez notepad

PS C:Usersv-lukez

如果想更好地控制应用程序,可以使用start命令,如下所示:

代码如下:

PS C:Usersv-lukez start notepad -WindowStyle MaximizedPS C:Usersv-lukez

以上结果可以最大化记事本窗口。其实类似的命令还有很多,更多的参数意味着更精细的控制。

其次,创建一个脚本

任务自动化基于程序文件或可执行脚本文件,PowerShell也支持将命令列表制作成脚本文件来执行。以下是Hello.ps1脚本文件的内容:

代码如下:

$a='Hello'$aecho $a a.txtdir a.txt

Hello.ps1脚本文件的执行结果如下:

代码如下:

PS E: D:ProjectsPractisePowerShellHello.ps1Hello Directory: E:Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 1/30/2013 4:56 PM 16 a.txt

您可能已经注意到,PowerShell脚本文件有一个. ps1扩展名。上面的脚本很简单:先定义一个变量,然后输出这个变量的结果,再把这个变量的值写入文件a.txt,最后输出这个文件的属性信息。

仅从这个角度来看,PowerShell脚本与批处理文件非常相似。但其实PowerShell能做的更多。

PowerShell脚本支持自定义函数,就像我们在编程语言中一样。FuncDemo.ps1给出了在PowerShell脚本中编写函数的示例:

代码如下:

#funcDemo.ps1function SayHello ($name){ echo 'hello $name'} SayHello 'Luke'

脚本的运行结果是“你好卢克”。

另外,关于PowerShell脚本中内部语句的运行顺序,这里简单说明一下:除了函数定义,脚本中的命令或函数调用(实际上相当于执行命令)会按顺序执行;函数中的语句仅在调用该函数时执行。

第三,利用。Net类型和COM对象

能够使用。Net类型和COM对象是PowerShell的最大特点,这使得PowerShell可以充分利用现有的资源,并且很容易吸引。Net和COM程序员。

简单类型:

代码如下:

[int]$a=10[String]$b=10

网络类型

代码如下:

$Message=new-object Net.Mail.MailMessage('me@source.com','you@destination.com', 'Subject', br'Here is some email')

COM对象

代码如下:

$myWord=new-object -comobject Word.Application

创建后。Net或COM对象,可以使用这些对象的属性和方法来完成更复杂的操作。