for 循环中的多个 do 命令:将字符串回显到文件,然后重定向到命令窗口

2023-12-22

我正在尝试编写一个批处理文件来迭代执行 Fortran 编译的可执行文件。通常,我们会进入 Windows 命令提示符,输入“Model.exe”。这将打开一个 dos 命令窗口,要求用户在 dos 提示符下直接在命令窗口中键入所需的文件名。

我想编写一个批处理文件来为我完成这一步,并迭代此步骤,以便我可以连续运行 10 次模拟,而不必手动执行。这种 shell 操作在 Linux 中很简单,但我没有可用的。

我的伪代码如下所示:

for /L %%run in (1,1,10) do
(设置str=Sim%%run
echo.%str% > 输入.txt
模型.exe

您可以将其分解为以下步骤:

  1. 为变量“运行”分配一个值。 (例如1)
  2. 将其与字符串(“Sim”)连接以创建一个新变量“Sim1”
  3. 将其回显到文本文件(“input.txt”)
  4. 从文件“input.txt”中读取变量“Sim1”
  5. 可执行文件消失并完成其任务。
  6. 重复步骤 1 -> 5,但使用新变量 calle“Sim2”等。

如果我使用,我可以让上述工作设置 str=Sim1然后直接将其回显到“input.txt”,但我无法让它作为循环工作。我错过了什么吗?

此致,

Ben


呃,cmd.exe 对变量扩展的处理很丑陋。所以,就需要“延迟扩容”,如下:

setlocal enabledelayedexpansion
for /L %%i in (1,1,10) do (
set str=Sim%%i
echo !str! > input.txt
Model.exe < input.txt)
endlocal

(当然在这种特殊情况下你可以说echo Sim%%i > input.txt但我认为你想通过另一个变量是有充分理由的。)

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

for 循环中的多个 do 命令:将字符串回显到文件,然后重定向到命令窗口 的相关文章

  • apache ProxyPass:如何保留原始IP地址

    我们使用 ProxyPass 将所有 r 请求重定向到端口 18080 上的 jboss 如下所示 ProxyPreserveHost on ProxyPass r http localhost 18080 redirectService
  • .htaccess 重定向到随机 URL

    我的服务器上有几个页面有流量 我需要将它们重定向到其他网站 这是最简单的部分 问题是我需要将事情混合起来并随机将人们发送到新站点 我发现可以在 time sec 之前做到这一点 但无论我尝试什么 我目前的知识都不足以使其发挥作用 这是我现在
  • REG ADD - 语法无效

    我试图通过在批处理文件中使用以下代码行来修改注册表中的值 但当我在参数周围使用双引号时 我不断收到 错误 语法无效 而当我使用单引号时 我不断收到 无效的键名 REG ADD HKLM SOFTWARE Microsoft Windows
  • 使用 set /p 更新批处理脚本的变量始终包含最后一个值

    我正在尝试使用 set p 命令在循环内调整 Windows 批处理变量 键盘输入后 变量仍然包含旧值 我读到通过 set p 设置的变量仅具有本地范围 但我不明白 本地 在这里的真正含义 echo off setlocal EnableD
  • 如何将字符串转换为电话号码

    我一直被这个问题困扰了很长时间 这就是问题 编写一个函数 以字符串作为参数并返回电话号码 对应于该字符串作为结果 电话号码也应该是一个字符串 转换规则是标准单词到电话号码的规则 a b 或 c 映射到 2 d e 或 f 映射到 3 g h
  • Curl 不被识别为内部或外部命令、可运行程序或批处理文件

    我已经安装了curl并将其设置为environment variable在我的系统中 但是当运行curl命令它给出一个错误 curl is not recognized as an internal or external command
  • 使用 htaccess 将 URL 重定向到特定于应用程序的深层链接

    我正在尝试执行以下操作 用户访问带有查询参数的 URL http www example com invite 1234 然后我希望他们深入链接到 iOS 设备上的应用程序 因此他们会转到 app name 1234 关于如何在我的中实现此
  • 批处理:将文件移动到名称第一个字母的文件夹?

    我想要 3 个文件夹 A G H T 和 U Z 我希望文件能够根据名称的第一个字母通过批处理自动分类到这些文件夹中 有办法做到这一点吗 谢谢你 ECHO OFF SETLOCAL ENABLEDELAYEDEXPANSION SET so
  • 批处理文件搜索与本地文件同名的文件夹并将所述文件移动到找到的文件夹不起作用

    因此 我尝试创建一个批处理文件 该文件将在与批处理文件相同的目录中获取 pdf 文件并输出文件名 无扩展名 我使用这段代码来完成此任务 echo off for r C Users me Test Folder G in pdf do se
  • 基于范围的 for 的表达式和声明中具有相同名称的标识符

    在基于范围的 for 循环中声明与循环表达式语句中使用的名称相同的循环变量是否合法 我希望这个例子能够清楚地说明这一点 include
  • 找出 Jquery ajax 请求被重定向到的位置

    所以 我收到了这个ajax请求 请参阅 金发女郎 大约6英尺高 看起来像这样 ajax url http example com makeThing dataType html type POST data something someot
  • 为什么for循环只显示最后一个循环的结果

    我有这个样本矩阵 X1 X2 X3 X4 1 F F F F 2 C C C C 3 D D D D 4 A A A A 我正在尝试使用 for 循环来获取每列中唯一音高的数量 我正在尝试这样做 y lt read csv file fra
  • 如果没有按下任何键,则检查按键而不阻塞

    我正在创建一个应用程序来查看当前时间 并创建了一个循环来每秒更新时间 循环看起来像这样 UPDATE The code to be re executed JMP UPDATE 但我无法结束它 当我使用 MOV AH 00H INT 21H
  • Web.config 将所有路径重定向到index.php - 不起作用

    我主要使用 Apache 和 htaccess 但我目前正在开发一个托管在 Windows 服务器上的网站 Web config 给我带来了很多问题 我试图将所有 URL 请求重定向到 index php 以便 PHP 脚本可以解析 URL
  • .bat 文件将文件排序到文件夹中

    对于我的图片集 我希望文件夹中的所有图片按日期自动分类到文件夹中 幸运的是 这些文件已经以时间戳命名 2012 07 15 12 21 06 jpg 2012 07 15 12 21 26 jpg 2012 07 16 12 12 50 j
  • 循环列表的值[重复]

    这个问题在这里已经有答案了 我是编码新手 正在尝试编写一个简单的代码 该代码将采用一个列表 例如 1 2 3 并循环元素 n 次 所以如果n 1 我应该得到A 3 1 2 如果n 2 我应该得到A 2 3 1 我写的代码是 n 1 j 0
  • 使用 for 循环 Python 为数组赋值

    我正在尝试将字符串的值分配给不同的数组索引 但我收到一个名为 列表分配超出范围 的错误 uuidVal distVal uuidArray distArray for i in range len returnedList for beac
  • 计算 for 循环期间的运行总计 - Python

    编辑 下面是我根据收到的反馈 答案编写的工作代码 这个问题源于我之前使用 MIT 的开放课件学习 Python CS 时提出的问题 在这里查看我之前的问题 https stackoverflow com questions 4990159
  • Apache 从子域重写为 www 但保留所有永久链接

    我已经研究了大约 2 个小时 虽然大多数主题都很相似 但没有一个解释如何做我想做的事情 我正在将一个结构为 blog domain com 的博客移至 www domain com blog 当我重定向时 我需要保留博客文章的永久链接 所以
  • Java:迭代 Collection 的最佳方法(此处为 ArrayList)

    今天 当我看到一段我已经使用了数百次的代码时 我很高兴地开始编码 迭代集合 此处为 ArrayList 出于某种原因 我实际上查看了 Eclipse 的自动完成选项 这让我想知道 在什么情况下以下循环比其他循环更好使用 经典的数组索引循环

随机推荐