Windows 批处理文件命令和变量

标签 windows batch-file cmd dos windows-console

我不确定这是否可行,但我需要的是一个在 Windows 7 上运行并执行以下操作的普通 bat/cmd 文件:

步骤 1。findstr - 它应该使用正则表达式引擎找到一个特定的字符串。假设我们正在寻找一个包含在标签 <id>123</id> 中的数字(假设这样的文件是唯一的,因此返回一个值)。该命令将打印 123到屏幕上,但我需要将它保存在一个变量中(不知道如何)。

第 2 步。再次调用 findstr在另一个目录上。现在我们想要找到一个文件名称(/m 选项),其中包含我们在步骤 1 中保存的值(在另一组文件中,即另一个目录中)。再次,将结果(文件名)保存在一个变量中。说,file_123.txt符合标准。

第 3 步。复制我们作为第二个 findstr 的结果获得的文件调用 ( file_123.txt) 到另一个位置。

整个问题围绕着如何将 Windows 命令的结果保存到变量,以便能够将这些值作为参数提供给后续命令。

最佳答案

在变量中获取命令输出的一般方法是

for /f %%x in ('some command') do set Var=%%x

(有各种变化,取决于上下文和确切的需求)。

至于你的步骤,我午饭后详细说明。有一些错综复杂的地方。

关于Windows 批处理文件命令和变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6276270/

相关文章:

windows - 报告 Direct3D 内存使用情况

java - 如何将文件夹变成jar文件

powershell - 如何找到所有.bat文件并一一执行?

batch-file - 如何使用 PUSHD 和 POPD

linux - Windows/Linux x64 如何确定上次访问内存页的时间?

C++ 套接字连接问题

python - Windows命令行和Python

windows - 如何给Windows命令一个定时器?

java - 为什么在执行 bufferedReader.readLine(); 时返回 null在 Windows cmd 和 powershell 中?

python - 如何使用 Python 访问命令提示符历史记录