Powershell--运算符(-as、-is、replace、-join、-split、-in、-contains)

1、-AS和-IS

 1.1   -AS运算符  将一种已存在的对象转换为新的对象类型,从而产生一个新的对象;

          例如,如果存在一个包含小鼠的数字(可能来自一个除法运算结果),可以通过converting或者casting将爱数字转化为一个整数 。

          举例1:1000/3 -AS [int] 

解释:首先是一个还将被转换的对象,然后是 -AS 运算符,最后一个[]中括号,中括号包含转化后的类型(本例[int]为取整数(四舍五入),是指将小数部分四舍五入转为整数,而不是简单的取整数)

相关的其他类型:

       [String]         #字符串

       [XML]           #XML是”可扩展标记语言“的缩写,是一种对于任意结构化的信息的可描述性语言。

       [INT]            #整数类型

       [Single]        #单精度实数类型,float(与single同意) 和 double 分别映射

                             到 System.Single 和 System.Double

       [Double]      #双精度实数类型

       [Datetime]   #对象的类型由实现定义,此类型的对象可以通过 cmdlet Get-Date 创建。

                             在 powerShell 中,此类型为 System.DateTime

       [bool]           #布尔类型为 bool。 该类型只有两个值,即 False 和 True,

                             这两个值分别由自动变量 $false 和 $true 表示 (§2.3.2.2) 。

                             在 PowerShell 中,bool 映射到 System.Boolean。

1.2 -IS运算符,主要用于判断某个对象是否为特定类型,如果是返回true,否返回false

      举例:123.45 -IS [int]

                "server01" -is [string]

                  $true -is [bool]

                   (Get-Date) -is [datetime]

2 -replace 运算符

      主要用于在某个字符串中虚招特定字符(串),最后将该字符(串)替换为新的字符(串);

举例:

       “192.168.34.12” -replace “34”,“15”

3 -Join 和 -split 运算符

主要用于将数组转化为分隔列表和将分隔列表转化为数组。

3.1  -join

举例:

1\    $array ="1","2","3","4","5","6"

$array

1

2

3

4

5

6

解释:powershell 自动将使用逗号隔开的列表识别为一个数组。

后面我们需要将这个数组的值转换为以管道符隔开的的字符串,可以使用-join实现,如下:

2\   $array -join "|"                             

    #可以将执行结果存入一个变量,这样可以直接重复使用,或者导出一个文件。

3\   $string = $array -join "|"

4\   $string 

5\   $string | out-file 25.2-data.dat

3.2 -split 

      从一个分割的字符串中产生一个数组。

 例如,假如存在一个包含一行四列数据的文件,在该文件中一制表符对列进行隔离。将该文件的内容显示出来,如下:

             1、先建立compute-20220707.txt       

                  内容为一行数据:server01 windows east managed

                  2、执行Get-Content computer-20220707.txt

             3、使用-split 运算符将该内容拆成4个独立的数组元素。

4  -contains 和 -In

4.1  -contains   运算符,主要用于在一个集合中查找是否存在特定对象。

                   比如,创建包含多个字符串对象的一个集合,然后检查特定对象是否包含在该集合中。

       简单举例:

                   1、  'this is notebook' -contains '*his*'

                                   false

                    2、 'this is notebook' -like '*his*'

                           true

        解释:在上面其实本意比较运算,-like 结果符合。

实际上-contains 在包含多个字符串对象的一个集合,然后检查特定对象是否包含在该集合中

       举例:

            

$collection='abc','edf','ghi','jkl'

$collection -contains 'abc'

True

解释:字符集合中包含'abc', 返回true

$collection -contains 'xyz'

False

解释:字符集合中不包含'xyz', 返回false

4.2   -in 可实现相同的功能,字符在集合里包含

$collection='abc','edf','ghi','jkl'

 'abc' -in $collection

解释:'abc'包含在字符集合中, 返回true

 'xyz' -in $collection

解释:'xyz'不包含在字符集合中, 返回false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Virtual_human0806

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值