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;}