[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 【已解决】合并多个BAT代码

本帖最后由 思想之翼 于 2014-8-21 14:24 编辑

@echo off
pushd "d:\文本\文本1\001\lishi\"
(for %%a in (wj循环*.txt) do (
    if not "%%~za" == "0" (
        type "%%a"
    ) else echo,
))>$
move $ "d:\文本\文件夹1\001.txt"
exit

@echo off
pushd "d:\文本\文本1\002\lishi\"
(for %%a in (wj循环*.txt) do (
    if not "%%~za" == "0" (
        type "%%a"
    ) else echo,
))>$
move $ "d:\文本\文件夹1\002.txt"
exit

......

@echo off
pushd "d:\文本\文本1\210\lishi\"
(for %%a in (wj循环*.txt) do (
    if not "%%~za" == "0" (
        type "%%a"
    ) else echo,
))>$
move $ "d:\文本\文件夹1\210.txt"
exit

合并上述210个BAT代码为:
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%x in (1001,1,1210) do (
  4.     set y=%%x
  5. pushd "d:\文本\文本1\!y:~1!\lishi\"
  6. (for %%a in (wj循环*.txt) do (
  7.     if not "%%~za" == "0" (
  8.         type "%%a"
  9.     ) else echo,
  10. ))>$
  11. move $ "d:\文本\文件夹1\!y:~1!.txt"
  12. exit
复制代码
合并后的代码出错了,不知道错在哪里,望帮助查勘!

是不是忘记了 setlocal enabledelayedexpansion

TOP

本帖最后由 思想之翼 于 2014-8-20 17:42 编辑

回复 2# DAIC


    setlocal enabledelayedexpansion
找到错哪里了。少一个括号。

@echo off&setlocal enabledelayedexpansion
for /l %%x in (1001,1,1210) do (
    set y=%%x
pushd "d:\文本\文本1\!y:~1!\lishi\"
(for %%a in (wj循环*.txt) do (
    if not "%%~za" == "0" (
        type "%%a"
    ) else echo,
))>$
move $ "d:\文本\文件夹1\!y:~1!.txt"
)
exit

TOP

回复 3# 思想之翼


    报错信息发出来看看

TOP

回复 1# 思想之翼


    头像是谁?

TOP

回复 5# 523066680


    好奇搜了一下,亮瞎了我的钛合金狗眼...

TOP

返回列表