Windows 将变量写入txt文件内,以便在cmd中循环

Windows 将变量写入txt文件内,以便在cmd中循环,windows,batch-file,cmd,Windows,Batch File,Cmd,我想使用批处理将变量写入多个文本文件,但它不起作用 Set b=5 Set c=13 For /l %%a in (1, 1,100) do ( Echo title Echo lambda 1.5406 Echo cell %b% %c% 90.00 100.00 Echo end of path b=%b% + 1 c=%c% + 1 )> path%%a.txt Plz帮助 在批处理中,应该始终避免使用空白,更不用说您使用空白的方式是

我想使用批处理将变量写入多个文本文件,但它不起作用

Set b=5
Set c=13
For /l %%a in (1, 1,100) do (
    Echo title
    Echo lambda 1.5406
    Echo cell %b% %c% 90.00 100.00
    Echo end of path
    b=%b% + 1
    c=%c% + 1
)> path%%a.txt
Plz帮助

在批处理中,应该始终避免使用空白,更不用说您使用空白的方式是错误的: 集合b=5正在将%b%设置为5

批量不支持浮点数的计算。 要解决这个问题:

传递到powershell并将输出重定向到您的文件 使用下面的方法 应启用DelayedExpansion。 您的脚本应该如下所示:

@echo off
====SETLOCAL EnableDelayedExpansion
set/a"b=50, c=131"


for /L %%N in (1,1,100) do (
    echo(title
    echo(lambda 1.5406
    echo(cell !b:~0,-1!.!b:~-1! !c:~0,-1!.!c:~-1! 90.00 100.00
    echo(end of path
    set/a"b+=1, c+=1"
)>"path%%N.txt"
缩短使用:


使用cmd.exe批处理脚本编程似乎不太可能取得成功。如果您在受支持的Windows系统上,PowerShell将可用

==donumbers.ps1

$b = 5
$c = 13.1

(1..100) |
    ForEach-Object {
        "title`nlambda 1.5406`ncell {0} {1} 90.00 100.00" -f @($b, $c) |
            Out-File -FilePath "C:/src/t/path$_.txt" -Encoding ascii
        $b = $b + 0.1
        $c = $c + 0.1
    }
使用以下命令运行它:

powershell -NoLogo -NoProfile -File .\donumbers.ps1

在继续之前,我会要求您打开一个命令提示窗口,输入set/?,然后阅读并理解它输出的所有内容。您可能会发现使用正确的语法会对您有所帮助,或者随后意识到set命令将无法实现您所需的操作。谢谢!我会的。据我所知,我使用的语法是正确的。问题是我无法将这些变量的值附加到.txt文件中。第六行刚刚输出了单元格90.00 100.00为了澄清,您使用的语法不正确,这一行设置b=5是错误的,就像这样,设置c=13.1和这个,b=%b%+0.1,这个c=%c%+0.1,还有这个>路径%%a.txt。不管这些是固定的,浮点数学都不能使用set执行,即使使用set的/A选项,也不能使用复杂的解决方法。正如我已经说过的,请打开一个命令提示符窗口,查看所选命令的使用信息!对这是正确的。在这里输入问题时,我确实在移动设备上输入了这段代码,因此有很多错误。这个答案只解决了有关脚本的一些问题。虽然您确实解决了批处理文件无法进行浮点运算的问题,但没有解决这两行代码的其他语法问题。您也没有解决使用标准输出的问题。如果我必须为c的每一个值获取100个b值,那么我是否使用嵌套foreach或其他方法else@TouseefPara-我不清楚你到底想描述什么。但是,是的,你可以使用嵌套的ForEach对象或ForEach循环。我想得到像这样的值5.1 13 5.2 13 5.3 13……5.1 13.1 5.2 13.1……5.1 13.2 5.2 13.2……@TouseefPara-请尝试修改代码以执行你想要的操作。如果不能,请在新问题中发布代码。请务必描述文件的数量及其内容。此代码生成100个文件。听起来像是要100*100 10000个文件。
powershell -NoLogo -NoProfile -File .\donumbers.ps1