PowerShell是一个面向对象的语言,在声明变量的时候不强制要求声明数据类型,使用$开头来申明变量即可。
查看变量的数据类型
变量是有了,Powershell能定义常量么?当然可以,不过需要用new-variable来定义:
常量是不能改变的,尝试给它重新赋值会抛出错误。这不是悲剧,悲剧的是,常量不能被删除,就算加上-force参数也不能被删除。
不过这个常量并不是永驻于你的操作系统了,只需退出当前控制台,再开启一个新的控制台,你就会发现,一些都是崭新的,没有之前定义的一切东西:函数、变量以及删不掉的常量。
话说回来,如果需要一个可以删除的常量,那不妨考虑下只读变量,只读变量有两种方式产生,一种是跟定义常量一样,在通过new-variable命令定义的时候指定-option为readonly;另一种是在变量已经存在的情况下,改变其选项。
PS F:\> new-variable rVar "James" -option readonly # 第一种方法
PS F:\> $rVar2 = "Fancy" # 第二种方法,先定义一个普通变量
PS F:\> (get-variable rVar2).options = "readonly" # 再通过get-varialbe取得变量对象并改变选项
PS F:\> # 当然上面这句话也可以用set-varialbe命令来完成,就像这样
PS F:\> # set-variable rVar2 -option readonly
PS F:\>
只读变量是可以被删除的,当然需要-force参数。只读变量也可以变回普通变量,只需要改变其选项,当然也需要-force参数。
PS F:\> del variable:rVar -force # 删除只读变量rVar
PS F:\> set-variable rVar2 -option none -force # 将rVar2变成普通变量
PS F:\>