代码改变世界

Windows PowerShell 2.0 语言之循环语句

2010-11-22 00:43 by @天行健中国元素, 4585 阅读, 收藏, 编辑
摘要: 循环是控制流中的重要部分,允许在条件满足的情况下重复执行脚本代码块。 简单循环语句while当简单while循环中的条件表达式成立时,将重复的执行脚本块,其一般格式如下: 下例等待notepad.exe进程退出: Get-Process notepad -ErrorAction SilentlyContinue语句是反复执行的,并会被转换为布尔类型的值。如果未发现进程,Get-Process将会抛...阅读全文

Windows PowerShell 2.0之脚本块变量作用域

2010-11-21 00:53 by @天行健中国元素, 2615 阅读, 收藏, 编辑
摘要: 变量作用域用来定义程序中哪些部分可以使用某个变量。PowerShell中对象的作用域规则设计得很巧妙,类似变量,但是却更强大,在脚本块、函数和脚本边界传递。本文仅给出脚本块中作用域的清晰定义,其他有关函数和脚本文件的作用域会分其他系列文章中详细介绍。 变量作用域定义 作用域是计算机科学中用于定义变量可以在哪些代码区域中起作用,类似于命名空间。这种机制允许用于在不同的环境下使用相同命名的对象,这...阅读全文

Windows PowerShell 2.0语言开发之管道对象

2010-11-20 00:23 by @天行健中国元素, 1860 阅读, 收藏, 编辑
摘要: 本文介绍了通过创建对象管道作用于集合的基础工具,可以把数据转换为用户需要的形式。有了这些操作,可以作用于来自不同来源的对象。每个PowerShell命令均作用于对象集合并返回另外的集合,并且可以在需要情况下将任何单个对象显式地转换为集合。 传统基于文本的管道 链式命令中的每个命令读取文本作为输入,然后生成文本作为输出,因此便于执行并提供传递参数的基本方法。然而用文本来传递数据的缺点主要的是没有标...阅读全文

Windows PowerShell 2.0语言之分支语句讲解

2010-11-19 01:14 by @天行健中国元素, 1714 阅读, 收藏, 编辑
摘要: 与算数表达式类似,条件表达式使用一系列操作求值用来计算结果。并且得到一个布尔类型的结果,即真和假。如果有时得出的结果是一个具体的数字,解析引擎在解析时也会执行布尔类型转换。即0为假,非0为真,所以在程序中直接以数值为流的控制条件。 在PowerShell中的真和假与其他类C语言中的true和false不同的,其条件表达式返回的结果是$true和$false。下例说明如何比较一个变量值是否小于7: ...阅读全文

Windows PowerShell 2.0之条件表达式的分析

2010-11-18 02:03 by @天行健中国元素, 2641 阅读, 收藏, 编辑
摘要: 与算数表达式类似,条件表达式使用一系列操作求值用来计算结果。并且得到一个布尔类型的结果,即真和假。如果有时得出的结果是一个具体的数字,解析引擎在解析时也会执行布尔类型转换。即0为假,非0为真,所以在程序中直接以数值为流的控制条件。 在PowerShell中的真和假与其他类C语言中的true和false不同的,其条件表达式返回的结果是$true和$false。下例说明如何比较一个变量值是否小于7: ...阅读全文

Windows PowerShell 2.0语言之字面类型系统

2010-11-17 00:31 by @天行健中国元素, 1732 阅读, 收藏, 编辑
摘要: PowerShell语言允许通过一个字面类型(type Literals)来访问类型,它是用括号抬起的类型名,返回.NET底层的System.Type对象实例,如: 不必在任何情况下都重复System命名空间的前缀,这时因为所用的大多数类型都在命名空间下。PowerShell允许省略这个前缀,如: 不需要记忆任何别名的含义,可以查询,如: 类型转换在原始对象前面放置字面类型,通常字面类型会通知Sh...阅读全文

Windows PowerShell 2.0语言的内置类型系统

2010-11-16 00:51 by @天行健中国元素, 2779 阅读, 收藏, 编辑
摘要: PowerShell不仅允许用户操作各种类型的对象,而且可以通过统一方式来修改这些类型。当然也包括内置类型,这样可以更贴近日常工作中用到的对象类型。PowerShell的类型在很大程度上依靠.NET框架,并且所有内置类型即.NET的类型。Shell的设计者扩展这些类型并为语言添加了特殊的语法快捷方式来让用户更方便地使用它们。 1 字符串和字符串操作 字符串值在任何编程语言中均为常用数据类型之一,主...阅读全文

Windows PowerShell 2.0 开发之命令别名 (1)

2010-11-15 01:32 by @天行健中国元素, 195 阅读, 收藏, 编辑
摘要: UNIX shell的用户已经能够为命令添加更简短和友好的别名,但遗憾的是DOS基于的shell,command.com和cmd.exe缺少这个特性。而其他第三方工具,如doskey.exe允许用户为命令定义别名,但不是基于shell的,而且用户需要记忆难记的语法。PowerShell最终填补了Windows shell的这个空白,而且提供了内置的对命令别名的支持。 PowerShell提供的大...阅读全文

抢先体验 Windows PowerShell 2.0 全新技术

2010-11-15 01:26 by @天行健中国元素, 867 阅读, 收藏, 编辑
摘要: Windows PowerShell(下简称“PowerShell”)是微软公司为Windows环境所开发的Shell及脚本语言技术,采用命令行界面。第1个版本于2006年第4季度正式发布。它的出现标志着微软公司从传统擅长的图形化和桌面化的PC领域迈向了脚本化的服务器领域的重要一步。PowerShell是一种新的命令行外壳和脚本语言,提供了丰富的系统管理、控制和自动化任务功能,是一款既与对象的Sh...阅读全文

Windows PowerShell 2.0语言对象与对象类型

2010-11-15 01:22 by @天行健中国元素, 2688 阅读, 收藏, 编辑
摘要: PowerShell中遵循的一切都是对象,具有一些专属的特性,可以使用这些属性来区别它们。由于Windows和Unix/Linux之间有本质区别,因此在Windows中要实现强大的Shell外壳不能遵循Unix/Linux的技术路线。而用对象来操作Windows无疑是最好的选择,对象可以有不同的类型和原型,并且可以存储不同的数据。对象的首要的属性是其类型,类型包含对象支持的操作。对于.NET类,可...阅读全文