📅  最后修改于: 2020-11-19 07:58:32             🧑  作者: Mango
Windows PowerShell是专门用于系统管理的命令行外壳程序和脚本语言。在Linux中其类似物称为Bash脚本。 Windows PowerShell建立在.NET Framework之上,可帮助IT专业人员控制和自动化Windows Server环境中运行的Windows操作系统和应用程序的管理。
Windows PowerShell命令称为cmdlet ,使您可以从命令行管理计算机。 Windows PowerShell提供程序使您可以像访问文件系统一样轻松地访问数据存储,例如注册表和证书存储。
此外,Windows PowerShell具有丰富的表达式解析器和全面开发的脚本语言。因此,简单来说,您可以完成使用GUI所做的所有任务以及更多其他工作。 Windows PowerShell脚本是一种经过全面开发的脚本语言,具有丰富的表达式解析器/
Cmdlet -Cmdlet执行常见的系统管理任务,例如管理注册表,服务,进程,事件日志以及使用Windows Management Instrumentation(WMI)。
面向任务-PowerShell脚本语言是基于任务的,并为现有脚本和命令行工具提供支持。
一致的设计-由于cmdlet和系统数据存储使用通用的语法并具有通用的命名约定,因此数据共享很容易。一个cmdlet的输出可以通过管道传递到另一cmdlet,而无需任何操作。
使用简单–简化的基于命令的导航使用户可以导航注册表和其他数据存储,类似于文件系统导航。
基于对象-PowerShell具有强大的对象操作功能。可以将对象直接发送到其他工具或数据库。
可扩展的界面。 −可以自定义PowerShell,因为独立的软件供应商和企业开发人员可以使用PowerShell来构建自定义工具和实用程序来管理其软件。
PowerShell变量是命名对象。当PowerShell与对象一起使用时,这些变量将用于对象。
变量名称应以$开头,并且可以在名称中包含字母数字字符和下划线。可以通过输入有效的变量名称来创建变量。
在PowerShell ISE控制台中键入以下命令。假设您在D:\ test文件夹中。
$location = Get-Location
在这里,我们创建了一个变量$ location,并将其分配给Get-Location cmdlet的输出。现在它包含当前位置。
在PowerShell ISE控制台中键入以下命令。
$location
您可以在PowerShell控制台中看到以下输出。
Path
----
D:\test
Get-Member cmdlet可以告诉您所使用的变量的类型。请参见下面的示例。
$location | Get-Member
您可以在PowerShell控制台中看到以下输出。
TypeName: System.Management.Automation.PathInfo
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Drive Property System.Management.Automation.PSDriveInfo Drive {get;}
Path Property System.String Path {get;}
Provider Property System.Management.Automation.ProviderInfo Provider {get;}
ProviderPath Property System.String ProviderPath {get;}