当前位置:网站首页 > 自然语言处理(NLP) > 正文

批处理读取配置文件(windows批处理 批量读取文件名)



需求:读取station.ini文件创建父节点(上、下、客场站集)文件夹到D盘,并根据配置拷贝当前文件夹下各个目录到指定的父节点文件夹。

以下为.bat文件内容

@echo off & setlocal enabledelayedexpansion
COLOR 0a
FOR /F "eol=; tokens=1* delims==" %%i IN (G:Sourcestation.ini) do (
    set p=%%i
    set q=%%j
    if "!p:~0,1!"=="[" (
        if "!p:~-1!"=="]" (
            rem 获取站名
            set name=!p:~1,-1!
        )
    )else (       
        set fatherNm=!p!
        set fileNm=!q!
        if "!fatherNm!"=="fatherName" (
            rem 获取父节点名称并创建文件夹
            if not exist d:!fileNm! md d:!fileNm!           
            set creatFile=!fileNm!         
        )       
    )
    if not "!name!"=="" (
        if not "!creatFile!"=="" (      
            rem 拷贝G:Source下各个文件夹到对应的站集 遍历G:Source文件
            for /d %%a in (*) do (
                set sonFileNm=%%a
                if "!sonFileNm!"=="!name!" (               
                    if not exist d:!creatFile!!sonFileNm! (
                        rem 以下赋值目的在于剔除末尾空格
                        set covertFileNm=!creatFile: =!
                        xcopy "G:Source!sonFileNm!" "d:!covertFileNm!!sonFileNm!" /e/h/r/y                       
                    ) else (
                    echo 存在同名文件&goto :eof
                    )
                )
            )
            set name=
            set creatFile=
         )
    )
)
pause

各个文件存放位置如下图所示:

批处理读取配置文件并作相应处理_批处理

结果为在D盘生成三个文件夹。

配置文件内容:(station.ini)

;;[SJT]当前站站码缩写
;;stationNm当前站名
;;areaNo当前站场码
;;fatherName归属于某个站集
;;=前后不要有空格
[sjt]
stationNm=上峰尾
areaNo=0x06
fatherName=上行站集

[ssc]
stationNm=上出发
areaNo=0x04
fatherName=上行站集

[ssd]
stationNm=上到达
areaNo=0x02
fatherName=上行站集

[sxf]
stationNm=下峰尾
areaNo=0x05
fatherName=下行站集

[sxc]
stationNm=下出发
areaNo=0x03
fatherName=上行站集

[sxd]
stationNm=下到达
areaNo=0x01
fatherName=上行站集

[snk]
stationNm=客场
areaNo=0x07
fatherName=客场站集

到此这篇批处理读取配置文件(windows批处理 批量读取文件名)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 批处理读取文件名并写入excel(批处理读取excel内容)2025-02-05 22:27:09
  • 批处理 修改文件名(批处理修改文件名前缀)2025-02-05 22:27:09
  • 批处理重命名文件名(批处理改文件名称)2025-02-05 22:27:09
  • 批处理读取txt内容(批处理读取excel内容)2025-02-05 22:27:09
  • win7虚拟机配置要求高吗(win7给虚拟机分配多大内存和处理器)2025-02-05 22:27:09
  • 批处理删除所有文件夹(批处理删除文件夹里的所有文件)2025-02-05 22:27:09
  • 删除文件夹 批处理(批处理删除指定文件命令)2025-02-05 22:27:09
  • 批处理重命名文件名(批处理命令修改文件名)2025-02-05 22:27:09
  • 批处理命令(批处理命令删除文件夹里面所有文件)2025-02-05 22:27:09
  • 批处理删除文件(批处理删除文件名相同字符)2025-02-05 22:27:09
  • 全屏图片