在默认的PowerShell ls命令中显示人类可读的文件大小

汤姆·梅菲尔德

如何在PowerShell中修改默认lsGet-ChildItem),使其显示人类可读的文件大小,例如ls -h在* nix机器上?

ls -lh 对文件大小进行简单的逻辑处理,以便显示非常小的文件的字节数,显示超过1K的文件则显示千字节(如果小于10K,则显示小数位),显示1M以上的文件,则显示兆字节(如果小于10MB,则显示小数位) 。

瓦利德·托米

试试这个

PS> gc c:\scripts\type\shrf.ps1xml

<Types>
<Type>
  <Name>System.IO.FileInfo</Name>
   <Members>
      <ScriptProperty>
          <Name>FileSize</Name>
          <GetScriptBlock>
             switch($this.length) {
               { $_ -gt 1tb } 
                      { "{0:n2} TB" -f ($_ / 1tb) }
               { $_ -gt 1gb } 
                      { "{0:n2} GB" -f ($_ / 1gb) }
               { $_ -gt 1mb } 
                      { "{0:n2} MB " -f ($_ / 1mb) }
               { $_ -gt 1kb } 
                      { "{0:n2} KB " -f ($_ / 1Kb) }
               default  
                      { "{0} B " -f $_} 
             }      
          </GetScriptBlock>
     </ScriptProperty>   
  </Members>
</Type>
</Types>

PS> Update-TypeData -AppendPath c:\scripts\type\shrf.ps1xml -verbose
PS> get-childItem $env:windir  | select Name,FileSize,length
PS> # you can paste this in your profile
PS> 

您还可以在PS3中使用动态类型数据:

   PS> Update-TypeData -TypeName System.IO.FileInfo -MemberName FileSize -MemberType ScriptProperty -Value { 

    switch($this.length) {
               { $_ -gt 1tb } 
                      { "{0:n2} TB" -f ($_ / 1tb) }
               { $_ -gt 1gb } 
                      { "{0:n2} GB" -f ($_ / 1gb) }
               { $_ -gt 1mb } 
                      { "{0:n2} MB " -f ($_ / 1mb) }
               { $_ -gt 1kb } 
                      { "{0:n2} KB " -f ($_ / 1Kb) }
               default  
                      { "{0} B " -f $_} 
             }      

 } -DefaultDisplayPropertySet Mode,LastWriteTime,FileSize,Name

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在OSX终端中显示人类可读的文件大小

来自分类Dev

如何在查找结果中显示“人类可读”的文件大小?

来自分类Dev

Powershell:从cmdlet中获取默认目录

来自分类Dev

ErrorAction默认在PowerShell脚本中停止

来自分类Dev

Powershell中未处理异常的默认行为

来自分类Dev

更改Windows 10中的默认Powershell版本

来自分类Dev

ls -l不显示人类可读的所有者和组,如何检查文件的所有者和组?

来自分类Dev

如何在Windows 7中设置PowerShell默认窗口大小?

来自分类Dev

默认情况下在参数中显示PowerShell HelpMessage

来自分类Dev

显示所有Powershell脚本参数默认变量

来自分类Dev

显示所有Powershell脚本参数默认变量

来自分类Dev

无法从PowerShell脚本写入默认的Inno Setup日志文件

来自分类Dev

Javascript人类可读文件大小

来自分类Dev

排序人类可读的文件大小

来自分类Dev

排序“人类可读”的文件大小

来自分类Dev

在Powershell(PowerCLI)脚本中隐藏默认的纯文本密码

来自分类Dev

Powershell中类型默认为Instance.ToString()的输出

来自分类Dev

使用Powershell临时禁用ServiceFabric中的默认服务

来自分类Dev

仅在脚本中覆盖默认的PowerShell PWD别名

来自分类Dev

如何使Notepad ++成为PowerShell中的默认编辑器?

来自分类Dev

Windows PowerShell 在默认程序中打开 python 脚本

来自分类Dev

默认的PowerShell终端可以保留命令历史记录吗?

来自分类Dev

使用PowerShell将文件复制到默认用户配置文件

来自分类Dev

为什么需要“-人类可读”而不是默认值?

来自分类Dev

Powershell-从管道到字符串添加(默认显示)对象属性值

来自分类Dev

默认情况下,X天后删除旧文件,但某些目录例外[Powershell]

来自分类Dev

Powershell选择Option Copy,但保留两个文件-默认情况下

来自分类Dev

是否可以使用指定的(非默认)配置文件启动Powershell ISE?

来自分类Dev

将Powershell中的默认值传递给另一个脚本

Related 相关文章

  1. 1

    在OSX终端中显示人类可读的文件大小

  2. 2

    如何在查找结果中显示“人类可读”的文件大小?

  3. 3

    Powershell:从cmdlet中获取默认目录

  4. 4

    ErrorAction默认在PowerShell脚本中停止

  5. 5

    Powershell中未处理异常的默认行为

  6. 6

    更改Windows 10中的默认Powershell版本

  7. 7

    ls -l不显示人类可读的所有者和组,如何检查文件的所有者和组?

  8. 8

    如何在Windows 7中设置PowerShell默认窗口大小?

  9. 9

    默认情况下在参数中显示PowerShell HelpMessage

  10. 10

    显示所有Powershell脚本参数默认变量

  11. 11

    显示所有Powershell脚本参数默认变量

  12. 12

    无法从PowerShell脚本写入默认的Inno Setup日志文件

  13. 13

    Javascript人类可读文件大小

  14. 14

    排序人类可读的文件大小

  15. 15

    排序“人类可读”的文件大小

  16. 16

    在Powershell(PowerCLI)脚本中隐藏默认的纯文本密码

  17. 17

    Powershell中类型默认为Instance.ToString()的输出

  18. 18

    使用Powershell临时禁用ServiceFabric中的默认服务

  19. 19

    仅在脚本中覆盖默认的PowerShell PWD别名

  20. 20

    如何使Notepad ++成为PowerShell中的默认编辑器?

  21. 21

    Windows PowerShell 在默认程序中打开 python 脚本

  22. 22

    默认的PowerShell终端可以保留命令历史记录吗?

  23. 23

    使用PowerShell将文件复制到默认用户配置文件

  24. 24

    为什么需要“-人类可读”而不是默认值?

  25. 25

    Powershell-从管道到字符串添加(默认显示)对象属性值

  26. 26

    默认情况下,X天后删除旧文件,但某些目录例外[Powershell]

  27. 27

    Powershell选择Option Copy,但保留两个文件-默认情况下

  28. 28

    是否可以使用指定的(非默认)配置文件启动Powershell ISE?

  29. 29

    将Powershell中的默认值传递给另一个脚本

热门标签

归档