首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我有一个逻辑,我需要在一个批处理文件(windows)中写入相同的逻辑。下面是代码

我有一个逻辑,我需要在一个批处理文件(windows)中写入相同的逻辑。下面是代码
EN

Stack Overflow用户
提问于 2014-02-14 10:39:52
回答 2查看 48关注 0票数 0

下面的部分是逻辑的psuedocode。我想知道相同的批处理代码。

代码语言:javascript
复制
var num = 5;
var total = 45;
for(i = 1; i <= total/num; i++) {   
    for(j = num - 1; j >= 0; j--) {
        // copy filename_((num*i) - j) to desitinationFolder/i/
    }
}

基本上,这样做的目的是:

  • 将filename_1复制到filename_5到destinationFolder/1/
  • 将filename_6复制到filename_10到destinationFolder/2/
  • 将filename_11复制到filename_15到destinationFolder/3/

等等..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-14 12:29:14

根据您的理解,您希望将5个文件传输到每个文件夹中。这意味着,文件1至5被放入文件夹1,6至10在文件夹2,11至15在文件夹3,等等。

尝试这段代码,只需一个循环就能很好地工作。

代码语言:javascript
复制
@echo off
setlocal enabledelayedexpansion enableextensions

set total=45
set /a result=(total/num1)

set foldernum=0
FOR /L %%I IN (1,1,%total%) DO (
    set /A var=%%I %% 5
    if !var! == 1 (
        set /A foldernum=foldernum + 1
    )
    ECHO %%I And !foldernum!
)
pause
票数 0
EN

Stack Overflow用户

发布于 2014-02-14 11:41:35

你可以试试这个。

代码语言:javascript
复制
@echo off
setlocal enabledelayedexpansion enableextensions

set num1=5
set total=45
set /a result=(total/num1)

FOR /L %%I IN (1,1,%result%) DO (
    FOR /L %%J IN (%num1%, -1, 1) DO (
        set /a curr=%num1%*%%I - %%J
        echo !curr!
    )
)
pause
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21777080

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档