知识点:
1、获取路径中的文件夹:Get-ChildItem $startFolder  | Where-Object {$_.PSIsContainer -eq $True} | Sort-Object
2、获取文件夹的总大小Get-ChildItem $i.FullName -recurse | Measure-Object -property length -sum
3、 正则表达式:$DBname=  $fullname -replace "^.*data\\" 、
文档:\\localhost\D$\WENDY1\DBDATA\WENDY-MBX
匹配:WENDY-MBX
$startFolders="FOLDERPATH1","FOLDERPATH2"
foreach ($startFolder in $startFolders)
{
$colItems = (Get-ChildItem $startFolder | Where-Object {$_.PSIsContainer -eq $True} | Sort-Object)
foreach ($i in $colItems)
{
$subFolderItems = (Get-ChildItem $i.FullName -recurse | Measure-Object -property length -sum)
$fullname=$i.FullName
$SERVER=$fullname -replace "WENDY-MBX.*"
$DBname= $fullname -replace "^.*data\\"
$size=("{0:N2}" -f ($subFolderItems.sum / 1GB))
} }
$size=("{0:N2}" -f ($subFolderItems.sum / 1GB))         保留小数点后两位
$size=[math]::truncate($disk.size/1GB)                            截取小数点,保留整数
$date=get-date).TOSTRING("yyyy-dd-MM")
$servers= get-adcomputer -Filter {Name -Like "GAGA*" -or Name -Like "WENDY*" } -SearchScope Subtree -SearchBase "DC=WENDY,DC=CORP,DC=COM"
foreach ($server in $servers)
{
$servername=$server.name
$disks =Get-WmiObject Win32_LogicalDisk -ComputerName $servername -Filter "DriveType='3'"
forEach ($disk in $disks)
{
$DE=$disk.DeviceID
$size=[math]::truncate($disk.size/1GB)
$space=[math]::truncate($disk.freespace/1GB)
} }

Powershell Get File/Disk Size的更多相关文章

  1. Powershell split file

    #网上所得非原创 function split($inFile, $outPrefix, [Int32] $bufSize){ $stream = [System.IO.File]::OpenRead ...

  2. Powershell About File System

    File System Rights Get-Acl $sharepath | select -expand access | where { !$_.IsInherited -AND $_.file ...

  3. C# calculate disk size

    static void Main(string[] args) { string dir = @"C:\"; string[] dirs=Directory.GetDirector ...

  4. Linux下获取硬盘使用情况

    Linux下获取硬盘使用情况[总结] 1.前言 在嵌入式设备中,硬盘空间非常有限,在涉及到经常写日志的进程时候,需要考虑日志的大小和删除,不然很快就硬盘写满,导致日志程序崩溃.为了捕获硬盘写满的异常场 ...

  5. linux下获取硬盘使用情况[总结]

    1.前言 在嵌入式设备中,硬盘空间非常有限,在涉及到经常写日志的进程时候,需要考虑日志的大小和删除,不然很快就硬盘写满,导致日志程序崩溃.为了捕获硬盘写满的异常场景,我们需要在写日志过程中判断硬盘空间 ...

  6. [PowerShell Utils] Create a list of virtual machines based on configuration read from a CSV file in Hyper-V

    Hello everyone, this is the third post of the series. .   Background =============== In my solution, ...

  7. Windows Azure Storage (20) 使用Azure File实现共享文件夹

    <Windows Azure Platform 系列文章目录> Update 2016-4-14.在Azure VM配置FTP和IIS,请参考: http://blogs.iis.net/ ...

  8. The commands of Disk

    The commands of Disk fdisk( the disk size is less 2TB) fdisk - partition table manipulator for Linux ...

  9. Keil AGDI Header File

    #ifndef __AGDI__INCED___ #define __AGDI__INCED___ //---Revision History: --------------------------- ...

随机推荐

  1. FusionCharts:tooltip分行显示

    FusionCharts:tooltip分行显示 tooltip分行显示:如果tooltip过长,可分行显示,在tooltip中增加{br} <chart> <set label=' ...

  2. 1-wire单总线DS18B20

    要想实现单总线通信,每一个挂在总线上的从机必须拥有开路或3态输出.单总线DS18B20的DQ引脚用内部电路实现了开漏输出,其等效电路如下图: 当单片机IO引脚配置为 mcu IO引脚 电流流向 DS1 ...

  3. 设置iptables允许ssh、http、ftp服务

    系统环境:centos-6.5 服务器:thinkserver 知识扫盲: NEW:这个包是我们看到的第一个包 ESTABLISHED:一个连接要从NEW变 为ESTABLISHED,只需要接到应答包 ...

  4. 服务器server2008网站iis7+php环境的搭建

    IIS+FastCGI+PHP5_32_Gzip环境搭建-------------------0.装iis71.把php_5.32_win86解压到d:\php2.php.ini文件已经配置好不需要在 ...

  5. c#.net调用pdf2swf.exe将pdf文件转换为swf,vs中运行正常,布署IIS服务器部署转换后文字部分为空白

    这个是权限问题, 需要在应用程序池中高级设置,将标识改为LocalSystem

  6. Linux 系统 pptpd+radius+mysql 安装攻略

    分类: 原文地址:Linux 系统 pptpd+radius+mysql 安装攻略 作者:wfeng .你所需要的软件 内核最好能升级到2.6 如果你是centos的用户,可以通过yum update ...

  7. Android在非UI线程中更新UI的方法

    1.使用Thread+Handler实现非UI线程更新UI界面 在UI Thread中创建Handler.用sendMessage(message)或者obtainMessage(result, ob ...

  8. Bash编程的难点

    Bash作为一个编程语言,有很多奇怪的表达字符,有时候会让人感到很费解,其实,只要我们弄清楚bash面临的问题 就能够理解为啥要这么搞了,举个例子: 1.比较字符串"ab"和&qu ...

  9. MooseFS管理

    一.goal(副本) 副本,在MFS中也被称为目标(Goal),它是指文件被复制的份数,设定目标值后可以通过mfsgetgoal命令来证实,也可以通过mfssetgoal命令来改变设定. 1 2 3 ...

  10. docker动态添加磁盘

    docker run --rm -v /usr/local/bin:/target jpetazzo/nsenter #!/bin/bash #This script is dynamic mount ...