zoukankan      html  css  js  c++  java
  • pwershell custom objects

    读这篇后的记录

    主要讲解的脚本

    $colAverages = @()
    
    $colStats = Import-CSV C:ScriptsTest.txt
    
    foreach ($objBatter in $colStats)
      {
        $objAverage = New-Object System.Object
        $objAverage | Add-Member -type NoteProperty -name Name -value $objBatter.Name
        $objAverage | Add-Member -type NoteProperty -name BattingAverage -value ("{0:N3}" -f ([int] $objBatter.Hits / $objBatter.AtBats))
        $colAverages += $objAverage
      }
    
    $colAverages | Sort-Object BattingAverage -descending
    本例主要讲解了,建立自己的对象,添加对象属性,并通过一些命令来达到操作对象属性的目的( 本例是计算命中率),新建自己的对象可以添加自己定义的属性,比直接导入 csv 文件产生的对象具有更多的属性。
         几个要点: 
    1. import-csv 命令 导入后生成一个对象数组,每一个对象的属性为 csv 文件中的打头行(列表)( header line ),就和数据库的表一样,每一对象代表一行数据
    2. 如何新增自定义对象,和往对象中添加属性 new-object System.Object  和 Add-Member -type NoteProperty -name xxx -value yyy
    3. .NET Framework formatting syntax  "{0:N3}" –f  格式化语法 大概查了下,N or n 代表数字,3代表小数点后三位  那个0不知道是什么意思,占位吗?
    4. 第二个值计算的时候要强制转换 [int] $objBatter.Hits ,因为powershell默认将这个值当作 String 来对待
     
         这个的使用可以用在对相关一些文件的处理中,不过也许直接使用excel更加便捷? 还有也许新建对象可以更加方便的处理一些自定义的问题?后边再看吧
  • 相关阅读:
    手撕 Goroutine 同步问题
    go基础知识面试备忘录
    专题3:链表类题型总结(go)
    python自动化开发-[第四天]-函数
    NOIP 飞扬的小鸟 题解
    集合 Properties 的 简单例子(Spring)
    Linux常用命令
    网络安全系列索引
    关于个人博客
    使用User Agent和代理IP隐藏身份
  • 原文地址:https://www.cnblogs.com/nervertoolate/p/7911866.html
Copyright © 2011-2022 走看看