@echo off
setlocal enabledelayedexpansion
set _SRCDIR=C:\Users\hyea\Desktop\Testing\Text Files
set _DSTDIR=C:\Users\hyea\Desktop\Testing\Text Files\TargetFolder
for /f "tokens=*" %%f in ('dir /b /a-d "!_SRCDIR!\*.COS"') do (
type "%_SRCDIR%\header.txt" > "!_DSTDIR!\%%f"
type "!_SRCDIR!\%%f" >> "!_DSTDIR!\%%f"
)
我有上面的代码,它将头文件与文本文件的内容连接起来,扩展名为.COS
。
我想知道如何将另一个文件扩展名添加到.RCS
的文件扩展名中,以便同时选择.COS
和.RCS
。
代码怎么样?
答案 0 :(得分:2)
dir
命令接受多个路径/文件名/模式参数,因此只需将第二种文件类型添加到命令行,如下所示:
@echo off
setlocal enabledelayedexpansion
set "_SRCDIR=C:\Users\hyea\Desktop\Testing\Text Files"
set "_DSTDIR=C:\Users\hyea\Desktop\Testing\Text Files\TargetFolder"
for /f "tokens=*" %%f in ('dir /b /a-d "!_SRCDIR!\*.COS" "!_SRCDIR!\*.RCS"') do (
type "%_SRCDIR%\header.txt" > "!_DSTDIR!\%%f"
type "!_SRCDIR!\%%f" >> "!_DSTDIR!\%%f"
)
此外,我改进了set
命令行并在整个赋值表达式周围加上引号,这避免了潜在特殊字符的问题,但不包括变量值中的""