Windows PowerShell 是专为系统管理员设计的新 Windows 命令行外壳程序。该外壳程序包括交互式提示和脚本环境,两者既可以独立使用也可以组合使用。
解读:
1、什么是交互式提示?
答:交互式提示就像打开一个cmd窗口,在里面执行一个ping命令一样,它会动态的输入结果。也可以像执行ftp命令一样,有一个上下文环境(Context),可以交互。
2、什么是脚本环境?
答:就像写VBScript脚本一样,以文件形式把PowerShell的程序语句写下来,然后利用PowerShell的脚本环境来执行整个脚本文件。顺便说一句,批处理也可以理解为一个脚本环境。PowerShell脚本文件的扩展名为.ps1,语言支持用于循环、条件、流控制和变量赋值的语言结构。
与接受和返回文本的大多数外壳程序不同,Windows PowerShell 是在 .NET 公共语言运行时 (CLR) 和 .NET Framework 的基础上构建的,它接受和返回 .NET 对象。环境中的这一根本更改带来了管理和配置 Windows 的全新工具和方法。
解读:
这个很有意思,一个对象化的脚本环境不奇怪,一个对象化的交互式环境确实是一个全新的理念。
Windows PowerShell 引入了 cmdlet(读作“command-let”)的概念,这是内置到外壳程序中的一个简单的单一功能命令行工具。可以分别使用每个 cmdlet,但是组合使用这些简单的工具执行复杂任务时才发挥其作用。Windows PowerShell 包括一百多个基本的核心 cmdlet,您可以编写自己的 cmdlet 并与其他用户共享它们。
解读:
1、这应该像command自带dir、cd、copy、del这些内置命令差不多,只不过它是可以模块化添加、删除的。PowerShell自带了大量cmdlet,也可以自己编写、分发。
2、可以通过其名称格式识别 cmdlet -- 由短划线 (-) 分隔的动词和名词,如 Get-Help、Get-Process 和 Start-Service。有Start-Service就有Stop-Service、Restart-Service,这里Windows系统不区分命令大小的一惯作风被得以体现。
3、每个cmdlet的作用都很简单,如“get”cmdlet 仅检索数据,“set”cmdlet 仅建立或更改数据,“format”cmdlet 仅设置数据格式,“out”cmdlet 仅将输出定向到指定的目标,所以应注意怎么组合使用。
4、每个 cmdlet 都具有一个帮助文件,可以通过键入以下内容访问它:get-help <cmdlet 名称> -detailed,如果只要查看简单的信息,就不要detailed这个参数,如果要查看更全面的技术信息,则需要把detailed更改为full。
也可以直接使用help <cmdlet 名称>,或者直接在使用 <cmdlet 名称> -? 。
get-help * 可以显示所有Powershell命令。get-help get-*可以显示get开头的命令。
试着完整的阅读get-help start-service -full,会对PowerShell有一个震撼的认识。
5、很多cmdlet有内置的别名,如Get-Service的别名就是gsv;
新闻热点
疑难解答