批处理脚本列出本地硬盘驱动器,然后在每个驱动器上执行 dir 命令

2023-12-01

我尝试根据这个主题制作一个脚本

用于查找已安装设备的驱动器号的批处理脚本

但并没有真正的成功。

这是脚本:

SETLOCAL EnableDelayedExpansion
for /f "usebackq tokens=1,*" %%i in (`fsutil fsinfo drives`) do (
    if exist %%j dir /S /D "%%j*hurrdurr.txt" >> fud_india.com_%computername%.txt
)
pause

问题是我得到了结果,但只针对 1 个驱动器号...

任何人都可以在这里提供帮助吗?


@echo off
    setlocal enableextensions disabledelayedexpansion

    >"fud_india.com_%computername%.txt" 2>nul (
        for /f "delims=: tokens=1,*" %%a in ('fsutil fsinfo drives') do (
            for %%c in (%%b) do vol %%~dc && dir /s /d "%%~dc\hurrdurr.txt"
        )
    ) 

The for /f只是处理行,在这种情况下是输出fsutil命令,并且能够使用指定的分隔符集将这些行拆分为标记。作为fsutil返回一行中的所有驱动器,类似于

Drives: C:\ D:\ E:\

如果不知道队列中可以有多少个驱动器,我们就无法(或多或少)表明我们想要多少个令牌。因此,我们需要获取行,分离标题,获取列表并迭代列表中的元素(驱动器)

第一步是将标头与驱动器列表分开。这是直接在for /f %%a通过tokens and delims条款。我们将使用冒号作为分隔符来将行分割为标记。

我们请求两个令牌:第一个令牌(%%a)将存储文本到第一个分隔符(标题)和第二个标记(%%b)将存储该行的其余部分(这就是*表示在 token 子句中)

驱动器列表存储在%%b我们需要一种方法来迭代它。这就是原因for %%c in (%%b) .... When %%b被展开,结果命令将是

for %%c in (C:\ D:\ E:\) do ...

对于列表中的每个元素vol命令用于确定驱动器是否可用,如果未设置错误级别,则dir命令被执行。

As the vol命令只接受驱动器引用,没有路径,我们需要从列表中的元素中删除结尾的反斜杠,所以不要直接使用%%c, 我们用%%~dc,即所引用元素的驱动器%%c.

完整的for循环包含在括号中并重定向,因此输出文件只需要打开/关闭一次。

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

批处理脚本列出本地硬盘驱动器,然后在每个驱动器上执行 dir 命令 的相关文章

  • 在 Windows 11 上无需管理员权限即可运行 Visual Studio 2022

    我在 Windows 11 上安装了 Visual Studio 2022 当我启动它时 它始终以管理员权限运行 我想在没有管理员权限的情况下运行它 我的 Windows 只有一个帐户 该帐户具有管理员权限 x 我做了什么 确认VS2022
  • 为什么我的文件路径中出现 Unicode 转义的语法错误? [复制]

    这个问题在这里已经有答案了 我想要访问的文件夹名为 python 位于我的桌面上 当我尝试访问它时出现以下错误 gt gt gt os chdir C Users expoperialed Desktop Python SyntaxErro
  • Python 可执行文件:py2exe 还是 PyInstaller?

    要创建可执行文件 Windows 我假设我们应该使用其中之一 Py2exe 或 PyInstaller 它们之间有什么区别 Py2exe 和 PyInstaller 都是包装器 但我注意到以下几点差异 Py2exe 与 python2 4
  • 使用 IDLE 编辑的 .py 文件消失了

    我曾经有过Edit with IDLE当我右键单击时的选项 py文件 但我多次卸载 重新安装以使某些东西正常工作 但现在它消失了 我检查了注册表HKEY CLASSES ROOT and HKEY LOCAL MACHINE对于价值低于Py
  • Windows Workflow Foundation 4 (WF4) 延迟

    我正在与 Visual Studio 2010 的候选版本一起使用 Wf4 编写一个用于批准资源请求的新工作流程 在我的工作流程中 如果请求未获得批准 我希望请求在几天后过期 我们在 WF 3 5 Visual Studio 2008 中通
  • 如何更改选项卡控件的名称

    我在 C WinForms 应用程序中使用选项卡控件 我想更改选项卡的标题 默认情况下它们是 tabPage1 tabPage2 等 一种无需代码即可实现的懒惰方法 选择选项卡控件 Go to properties use F4 to do
  • Windows7上python3.5无法安装BeautifulSoup4

    我已经从下载了 beautifulsoup4 4 5 3 tar gzhttps www crummy com software BeautifulSoup bs4 download 4 5 https www crummy com sof
  • 如何从任何进程关闭 Windows 上的套接字(ipv4 和 ipv6)连接?

    如何在 Windows 上关闭 tcp v4 和 tcp v6 连接 我不想终止具有开放连接的整个进程 因为这显然会将其他人踢出该进程 我需要从一个单独的进程执行此操作 因此无法访问套接字句柄等 我正在使用 Windows API 来获取
  • 在OpenCV中将YUV转换为BGR或RGB

    我有一个电视采集卡 其输入内容为 YUV 格式 我在这里看到了与此问题类似的其他帖子 并尝试尝试所述的所有可能的方法 但它们都没有提供清晰的图像 目前最好的结果是 OpenCVcvCvtColor scr dst CV YUV2BGR 函数
  • 确定用于映射网络驱动器的域和用户名

    使用带有 SP1 的 Windows 7 Enterprise 但我希望得到适用于 Windows XP 2003 2008 Vista 7 的通用答案 从命令提示符处 我执行net use命令将 Z 驱动器映射到另一台计算机上的共享 但我
  • 由于图形处理单元配置,不支持 Windows Phone 模拟器(Mac 上的 Windows 7)

    启动 Windows Phone 模拟器时出现错误 不支持 Windows Phone 模拟器 因为您的计算机没有所需的图形处理单元配置 如果没有图形处理单元 XNA 框架页面将无法运行 您想继续启动模拟器吗 当我尝试访问网页 任何网页 时
  • Qt(在 Windows 上)将权限级别设置为“requireAdministrator”

    我正在使用 Qt Creator 并努力制作 exe文件默认以管理员身份运行 在线阅读所有解决方案我试图将这一行放入我的 pro file QMAKE LFLAGS MANIFESTUAC level requireAdministrato
  • 以编程方式从 java 代码中查找 java.exe 的绝对路径

    如果我有一个由用户启动的 java jar 或类文件 假设在环境变量中设置了 java 路径 那么我如何从代码中找出 java exe javaw exe 的绝对路径文件正在启动 就像在 ubuntu 上一样 我们可以运行 which ja
  • 取消后调用 boost::asio 异步处理程序没有错误

    我的代码在单个线程中使用 boost asio 和 io service 来执行各种套接字操作 所有操作都是异步的 每个处理程序都依赖于boost system error code 特别boost asio error operation
  • 相当于Linux中的导入库

    在 Windows C 中 当您想要链接 DLL 时 您必须提供导入库 但是在 GNU 构建系统中 当您想要链接 so 文件 相当于 dll 时 您就不需要链接 为什么是这样 是否有等效的 Windows 导入库 注意 我不会谈论在 Win
  • 如何在批处理文件中回显换行符?

    如何从批处理文件输出中插入换行符 我想做类似的事情 echo hello nworld 这会输出 hello world Use echo hello echo echo world
  • 更改 Wi-Fi 配置文件的密码

    在我志愿服务的长期护理医院中 每个月的第一天 访客 Wi Fi 连接的密码都会更改 这给工作人员带来了大量的工作 也给患者带来了很多挫败感 其中许多人的行动能力非常有限 是的 真正的解决方案是让 IT 团队保留相同的密码 但这不会发生 大多
  • 用于列出文件夹但排除特定文件夹的批处理脚本

    我希望此脚本列出文件夹名称中包含 deleted 的所有文件夹 但如果它们位于名为 done 的文件夹中则不列出 例如 列出文件夹 如果位于 C temp如果它在C temp random folder name但如果它在C temp do
  • NodeJS Express Windows 最大连接数设置

    在哪里设置nodejs的最大连接数 用于使用express get 在 Windows 10 中 与linux中的最大文件 描述符 设置有关吗 有该设置的 Windows 版本吗 最好是在nodejs中进行设置 以便在迁移到unix时兼容
  • 如何查看网络连接状态是否发生变化?

    我正在编写一个应用程序 用于检查计算机是否连接到某个特定网络 并为我们的用户带来一些魔力 该应用程序将在后台运行并执行检查是否用户请求 托盘中的菜单 我还希望应用程序能够自动检查用户是否从有线更改为无线 或者断开连接并连接到新网络 并执行魔

随机推荐

  • 如何在 Cosmos DB 容器上显示唯一键?

    这个链接意味着可以通过查看设置在 Cosmos DB 容器中看到唯一键 但是 我似乎无法同时使用门户和存储资源管理器找到它们 如何查看现有 Cosmos DB 容器上的唯一键 我有一个文档由于密钥冲突而无法加载 这应该是不可能的 所以我需要
  • Apps 脚本 - 模态显示和 google.script.run 从有界到库

    我有一个电子表格文件 其中包含集成了库的有界脚本 该库提供了2个函数 显示带有按钮的 html 模式 提供点击 html 上的按钮时的回调函数 图书馆内容 test html
  • PHPWord 中的 HTML 阅读器无法处理表格?

    当我使用 Html 阅读器将 html 转换为 docx 时 阅读器被切断了我的表格 PHP 示例 reader IOFactory createReader HTML phpWord reader gt load this gt getR
  • 加密 URL 中的路由数据

    在我的 ASP NET MVC 应用程序中 我想加密路由数据而不是 QueryString 换句话说 我正在使用 ASP NET MVC 默认路由模式 routes MapRoute name Default url controller
  • 如何使用第一个表中的逗号分隔值从其他表中选择行? [复制]

    这个问题在这里已经有答案了 有没有办法使用第一个表中的逗号分隔值从其他表中选择行 表格1 faculty subject 101 102 104 103 105 表 2 subject code subject 101 subject 1
  • new Date() 依赖于操作系统吗?

    好吧 我正在使用 javascript 通过简单的正则表达式返回用户系统时间的简写时区 如下所示 new RegExp exec new Date toString 0 这在 Mac 下使用 chrome 效果很好 例如我按预期得到 UTC
  • 变量以及它们在 prolog 中的设置和使用方式

    http www csupomona edu jrfisher www prolog tutorial 2 1 html 所以在那个教程中它有 conflict Coloring adjacent X Y color X Color Col
  • 在页面之间发送参数的最佳方式是什么?

    我们在项目中使用 JSF 我对它还很陌生 每个页面都有一个 back bean Java 文件 为了从一个页面移动 重定向 到另一个页面 我需要在重定向之前将所有参数 搜索条件 放入请求范围中 然后在下一页构造函数中检索它 当你的页面深度很
  • 如何在邮件合并中保留谷歌电子表格的格式?

    我想发送一封电子邮件 其中包含谷歌电子表格内容作为带有格式的正文 我参考了here但它仅适用于单元格 A1 我希望它适用于完整的数据范围 如何在发送电子邮件时保留所有格式 你需要使用getRichTextValues获取给定范围内每个单元格
  • 嵌入文档属性的多次更新

    我有以下收藏 Milestones ActualDate null Index 0 Name milestone1 TargetDate ISODate 2011 12 13T22 00 00Z id ObjectId 4ee89ae7e6
  • config.exceptions_app 无法在 Rails 中工作

    我正在尝试为所有 404 和 500 错误呈现自定义错误页面 所以我在ErrorController类中定义了两个方法not found和internal server error class ErrorController lt Appl
  • 在代理处理程序中,如何区分获取属性(var)与调用方法?

    我有以下代码 其中我使用代理对象 代理 来尝试捕获方法调用和属性访问 例子 https jsfiddle net r8j4fzxL 2 function use strict console clear some empty class w
  • Lisp 中的 setq 和 defvar

    我看到实用 Common Lisp uses defvar db nil 用于设置一个全局变量 使用不是可以吗setq为了同样的目的 使用的优点 缺点是什么defvar vs setq 引入变量的方法有多种 DEFVAR and 定义参数介
  • 为什么两个表之间的完全外连接结果中有NULL?

    我试图从两个表中获取唯一值 这两个表都只有一列称为域 DDL create table domains 1 domain varchar create table domains 2 domain varchar DML insert in
  • 使用htaccess将目录传递给GET参数而不重写url

    我想传递 而不是重定向 这样的东西 http www example com 有 可选 传递给脚本http www example com index php http www example com foo 有 可选 传递给脚本http
  • Python 等语言如何克服 C 的整数数据限制?

    使用 C Python 和 Scheme 中的阶乘程序进行一些随机实验 我发现了这个事实 在 C 中 使用 unsigned long long 数据类型 我可以打印的最大阶乘为 65 即 9223372036854775808 即指定的
  • 实施重试例程

    我有以下想法 是否可以在 python 中实现重试例程 这是我所做的一个简单示例 我想要一个更灵活的解决方案 独立于功能 因此 将removeFile 与任何其他函数切换 并摆脱main 中的while 循环 import os impor
  • 显示git中每个分支的最新提交

    有没有办法显示git中每个分支的最新提交 我在 git 中有一个代码库 我已经设置了一段时间了 其中有几个分支用于不同的功能 我需要进去更新 排除一些代码的问题 但是我选择将它们命名得太笼统 现在我不知道我最后在处理哪一个 甚至不知道哪一个
  • 不能直接使用Function.prototype.call

    function f a return a f 1 gt 1 f call null 1 gt 1 Function prototype call f null 1 gt undefined 为什么最后一行返回undefined 我以为它们
  • 批处理脚本列出本地硬盘驱动器,然后在每个驱动器上执行 dir 命令

    我尝试根据这个主题制作一个脚本 用于查找已安装设备的驱动器号的批处理脚本 但并没有真正的成功 这是脚本 SETLOCAL EnableDelayedExpansion for f usebackq tokens 1 i in fsutil