Powershell,查看(循环)所有驱动器

2023-12-09

我是 Powershell 新手,我尝试在网上寻找问题的解决方案,但似乎找不到。基本上我需要写一些东西,让 powershell 浏览所有驱动器和目录以找到以下内容:

文件总数(不包括文件夹)、最大文件大小、平均文件大小、总文件大小

这是我到目前为止所写的:

$source = "get-psdrive"

#attempt at looking through all drives/directories which didn't work
foreach($a in $source) {

    #counts files in given directory
    Get-ChildItem -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object |
        ForEach-Object { $_.Count }

    #select largest file in given directory
    Get-ChildItem -Recurse -File -ErrorAction SilentlyContinue -Force |
        Sort-Object Length -Descending |
        Select-Object -First 1

    #get average file size in a given directory
    Get-ChildItem -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object -Property Length -Average

    #sum of file sizes in given directory
    (Get-ChildItem -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object -Sum Length).Sum
}

问题是它只在C盘中查找。我不知道是否有办法查看我的计算机而不是特定的驱动器,但我似乎找不到办法。任何帮助表示赞赏。


With "..."您定义了一个字符串,因此在您的示例中您尝试循环遍历一个字符串。

试试这样:

$Drives = Get-PSDrive -PSProvider 'FileSystem'

foreach($Drive in $drives) {

    #counts files in given directory
    Get-ChildItem -Path $Drive.Root -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object |
        ForEach-Object { $_.Count }

    #select largest file in given directory
    Get-ChildItem -Path $Drive.Root -Recurse -File -ErrorAction SilentlyContinue -Force |
        Sort-Object Length -Descending |
        Select-Object -First 1

    #get average file size in a given directory
    Get-ChildItem -Path $Drive.Root -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object -Property Length -Average

    #sum of file sizes in given directory 
    (Get-ChildItem -Path $Drive.Root -Recurse -File -ErrorAction SilentlyContinue -Force |
        Measure-Object -Sum Length).Sum

}

笔记!我没有改变你的Get-ChildItem代码(除了搜索路径)。我只写了foreach loop.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Powershell,查看(循环)所有驱动器 的相关文章

  • 获取文件夹及其子文件夹中最长文件路径的长度

    我正在寻找一个可以从命令行 批处理 PowerShell 运行的脚本 该脚本将遍历文件夹及其子文件夹 并返回一个数字 该数字是最长文件路径的长度 我已经看到了一些批处理和 PowerShell 脚本 例如 如何在 Windows 中查找路径
  • For 循环内的 For 循环 Javascript

    由于某种原因 该语句跳过了一些数据 我是否缺少一个 continue 语句某处或某事 这是代码 for var i 0 len data ORDER STATUS 0 ORDERS length i lt len i if data ORD
  • SQL Server 2008:如何使用 powershell 获取“消息”选项卡(在 Management Studio 中)输出

    我在用invoke sqlcmd管理我的数据库 它工作得很好 我将 Management Studio 中 结果 选项卡的输出保存到日志文件中 当我做一个BACKUP DATABASE 输出是在 消息 选项卡上完成的 我想将其保存在日志文件
  • 替换 CSV 文件中的引号和特殊字符的一些难题

    我在处理一些需要清理并加载到数据库中的 CSV 文件时遇到了一些难题 我相当擅长使用 PowerShell 但不擅长正则表达式和 csv 列操作 这是我遇到的问题 我正在使用的 CSV 文件中有一个 注释 字段 可以包含各种不同的字符 主要
  • 使用 powershell 编辑 XML

    好吧 我感觉自己像个大白痴 为了工作中的管理目的 我使用 Powershell 已经有一段时间了 也就是说 编写脚本不是我的强项 现在 我正在尝试编写一个 PS 脚本 将一个部分添加到一堆机器上的 XML 中 以添加设置来解决我们在某个应用
  • PowerShell 脚本 ffmpeg

    作为一名优秀的 Windows 系统管理员 我终于开始学习 PowerShell 话虽这么说 我不知道我在做什么 惊讶 惊讶 我认为远离生产环境 在家里使用 PowerShell 对我来说将是一次很好的学习经历 最近 我开始使用 FFMPE
  • 请解释 JavaScript 闭包在循环中的使用[重复]

    这个问题在这里已经有答案了 我读过很多关于闭包和循环内闭包的解释 我很难理解这个概念 我有这样的代码 有没有一种方法可以尽可能地减少代码 从而使闭包的概念更加清晰 我很难理解其中的部分i位于两个括号内 谢谢 function addLink
  • Python循环读取数据的文本文件[重复]

    这个问题在这里已经有答案了 我是Python新手 虽然我确信这可能是一个微不足道的问题 但我花了一整天的时间尝试以不同的方式解决这个问题 我有一个包含如下数据的文件
  • 抑制数组列表添加方法管道输出

    我正在使用数组列表来构建日志项序列以供稍后记录 工作起来很不错 但是 Add 方法将当前索引发送到管道 我可以通过将其发送到 null 来解决这个问题 如下所示 strings Add junk gt null 但我想知道是否有某种机制可以
  • 动态规划的复杂组合条件

    我正在探索动态规划设计方法如何与问题的底层组合属性相关 为此 我正在查看的规范实例硬币找零问题 Let S d 1 d 2 d m and n gt 0是请求的金额 我们可以用多少种方式相加n仅使用中的元素S 如果我们遵循一个动态规划如果要
  • 使用循环将对象添加到列表(python)

    我正在尝试使用 while 循环将对象添加到列表中 基本上这就是我想做的 class x pass choice raw input pick what you want to do while choice 0 if choice 1 E
  • System.IO.FileInfo 的“目标”成员记录在哪里?

    PowerShell 命令行开关Get Item 如果应用于文件 则返回System IO FileInfo type PS C gt item get item c windows System32 atl dll PS C gt ite
  • PostgreSQL:循环直到条件为真

    我正在尝试编写一个查询 该查询从指定值开始 循环 数据库 直到条件为真 例如 假设我在 TABLE 示例中有以下条目 id parent cond 1 True 2 1 False 3 1 False 4 2 False 我想要一个以 4
  • Get-AzureDomain、GetAzureADUser 等返回 Authentication_Unauthorized、未找到用户

    我能够使用 PowerShell 对我创建的 我是全局管理员的 Azure AD 资源进行身份验证 我执行此命令以通过 AD 进行身份验证 AzureADCred Get Credential Message Cred to connect
  • 如何使用 P/Invoke 在 PowerShell 1.0 中调用 Win32 函数?

    在许多情况下 从 PowerShell 脚本调用 Win32 函数或其他一些 DLL 会很有用 给定以下函数签名 bool MyFunction char buffer int bufferSize 我听说 PowerShell CTP 2
  • powershell xml排序节点和替换子节点

    我正在尝试使用 powershell 和 xml 做一些非常简单的事情 但没有遇到任何麻烦 基本上我试图采用以下 xml 并按名称对机器元素进行排序 然后将它们放回到 XML 中 以便我可以保存回文件中 如果输出 new 对象 排序似乎有效
  • 从命令行调用PowerShell函数

    鉴于以下情况say hello ps1我的文件系统上的文件 function SayHello return Hello World 像这样在命令行上调用 它最终将作为 Windows 计划任务运行 powershell Execution
  • IEnumerable.比带中断的 for 循环更快吗?

    我们的代码打开表单时遇到了一些缓慢的情况 这可能是由于for循环与break这需要很长时间才能执行 我把它切换到IEnumerable Any 并看到表格很快打开 我现在试图弄清楚是否单独进行此更改会提高性能 或者是否正在访问Product
  • 如何在 Azure PowerShell 函数中导入模块?

    我尝试从函数查询天蓝色表 使用 Get AzTableRow 在我的笔记本电脑上工作得很好 但模块 aztable 不存在于天蓝色功能中 因此我得到的只是红屏 有办法安装吗 谢谢 大卫 您无需自行在 Azure Function 中安装 A
  • 递归遍历树视图中的节点?

    我有一个树视图 其中已经填充了另一个过程中的文件 文件夹 我想按照从上到下的确切顺序逐项迭代树视图中的项目 但是 与普通列表不同 我不能仅使用简单的for对此的声明 我必须进入每个节点等 我该怎么做呢 我希望有一种方法可以在不运行递归过程的

随机推荐

  • 在 MVC3 中使用 WebApi

    使用 WebApi 在 MVC 客户端中使用服务的最佳方式是什么 如果响应返回为
  • PHP数据库连接实践

    我有一个连接到多个数据库 Oracle MySQL 和 MSSQL 的脚本 每次脚本运行时可能不会使用每个数据库连接 但所有数据库连接都可以在单个脚本执行中使用 我的问题是 即使所有连接可能都没有被使用 最好在脚本开始时连接到所有数据库一次
  • 基于范围的 for 如何适用于普通数组?

    在 C 11 中 您可以使用基于范围的for 其作用为foreach其他语言的 它甚至适用于普通的 C 数组 int numbers 1 2 3 4 5 for int n numbers n 2 它如何知道何时停止 它是否仅适用于已在同一
  • 为什么同样的方法在 Swift 的数组扩展中会失败?

    当我尝试打电话时 我的行为很奇怪sort 从数组扩展中 例如此方法 func test let a 1 2 3 sort a x y in x lt y 可以单独工作 但在内部时会失败Array扩大 extension Array func
  • 从字节数组中创建新的 FileStream

    我正在尝试从字节数组创建一个新的 FileStream 对象 我确信这根本没有意义 所以我将在下面尝试更详细地解释 我正在完成的任务 1 读取之前的源文件压缩的2 使用GZipStream解压数据 3 将解压后的数据复制到字节数组中 我想改
  • Android 设备重启后广播接收器不工作

    我已经检查了所有相关问题 但没有找到解决此问题的方法 所以这对我来说绝对是一个新问题 我拥有的 我有一个 Android 应用程序 它在其清单中注册了一些广播接收器 这就是我的清单的样子
  • JavaFX:父级及其子级的鼠标单击事件

    我有一张卡片 由页眉 正文和页脚组成 可以包含更多节点 如标签 文本字段等 我需要抓住on mouse clicked单击发生时的任何时间事件卡内 无论它是卡本身还是它的子卡之一 现在 如果我单击文本字段 则不会触发事件 private S
  • 在发布的 Android 应用程序中完全禁用 LogCat 输出?

    关闭my own在将应用程序发布到市场之前 应用程序的 LogCat 输出非常简单 我还知道如何通过标签和 或 id 有选择地过滤 LogCat 消息 以方便我自己的调试 但现在我对一些可能更困难 也许不可能 的事情感兴趣 禁用所有 Log
  • 如何在zend框架中添加新类并自动加载

    我是 Zend 框架的新手 第一次使用它 我正在寻找可以在很短的时间内阅读的简单基础教程 如果我想在 Zend 库中添加新类 我也坚持这样做 当我制作任何新控制器时 它也应该自动加载 如果您有意见 请提出您的意见 Regards 这在一开始
  • 在基本身份验证 URL 中转义用户名字符

    使用http基本身份验证时 可以在URL中传递用户名 例如 http email protected path 但现在假设用户名是电子邮件地址 例如 电子邮件受保护 这样做显然是不明确的 http email protected foo c
  • LESS:您可以将 CSS 选择器与媒体查询分组吗?

    我真的很高兴发现您可以创建一个媒体查询变量 您可以轻松地重用该变量并使您的代码更具可读性 tablet min width 768px and max width 980px media tablet 我想知道是否可以将媒体查询与选择器分组
  • IBM Worklight - 如何更改默认的“Worklight 设置”字符串?

    有没有办法更改 Android 选项菜单中 Worklight 提供的默认 Work Light 设置 字符串 Update 稍微纠正一下答案 Yes 打开您的App is 位于yourProject apps yourApp common
  • 在eclipse中使用java库

    我对 eclipse 有点陌生 想要使用以下库 以便我可以使用它们实现的对象 HttpClient 和 Java csv 我如何导入这些库以便我可以用它们编写一些java http hc apache org downloads cgi h
  • 使用 JsonReader 而不是 JsonSerializer 时自定义 JsonConverter 不起作用

    我有课Foo和它的FooConverter定义如下 JsonConverter typeof FooConverter public class Foo public string Something get set public clas
  • 是否有一个 iOS“厨房水槽”应用程序可以在任何地方获取源代码? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我正在学习 iOS 开发
  • 带有 {fmt} 的自定义格式说明符用于自定义类

    在格式化我自己的自定义类型时 我将如何允许自定义填充等 struct S int x template lt gt struct fmt formatter
  • Sqlite 检查逗号分隔的数字字符串是否包含数字

    如何检查Sqlite中的字符串是否包含数字 该字符串是逗号分隔的正数 不以 0 开头 我需要检查它是否包含其他数字 Ex Is 5 in 1 2 1 gt 否 Is 5 in 35 55 15 gt 否 Is 5 in 5 gt 是的 Is
  • 如何从 9 个大小为 N 的数组快速创建 N 个 3x3 矩阵的数组?

    假设我有 9 个大小为 N 的数组 A B C J 我想创建一个由 N 3x3 矩阵组成的新数组 例如 matrices i A i B i C i D i E i F i G i H i J i 一个简单的解决方案是将每个条目添加到数组中
  • 停止 Flask 复制加载的变量

    我正在构建一个基本的云基础设施管理站点 但列出虚拟机的页面有问题 Flask 应用程序会拉取通过各种云平台的 API 生成的列表 格式如下 vm list vmid name state platform 该列表是通过循环 API 输出并附
  • Powershell,查看(循环)所有驱动器

    我是 Powershell 新手 我尝试在网上寻找问题的解决方案 但似乎找不到 基本上我需要写一些东西 让 powershell 浏览所有驱动器和目录以找到以下内容 文件总数 不包括文件夹 最大文件大小 平均文件大小 总文件大小 这是我到目