Board logo

标题: [文件操作] 求助 如何实现批处理命令指定文件名的复制命令 [打印本页]

作者: weikwok    时间: 2021-3-22 10:59     标题: 求助 如何实现批处理命令指定文件名的复制命令

本帖最后由 weikwok 于 2021-3-22 11:54 编辑

各位大神 请教一下  如何实现自定义输入日期 (这个时间指的是0文件内生成的以日期为文件名的多格式文件) 蒋这些文件复制到另一个文件夹内 并完成重命名和转换后缀 以及其他格式文件。

举例:0文件名内含有   20210201.jpg
                                20210201.plg
                                20210201.plr
                                20210201.alr
需要转换成:
                                20210201.jpg=2000.jpg
                                20210201.plg=2000.xls
                                20210201.plr=2000.xlc
                                20210201.alr=2000.xxl

我只需输入20210202 就可以 把0文件夹内的20210201的所有后缀的文件复制到log文件夹内并完成改名和后缀。
作者: Batcher    时间: 2021-3-22 12:17

回复 1# weikwok


    不管输入什么日期,改名之后都是2000吗?如果不是,请说明具体改名规则。
作者: weikwok    时间: 2021-5-21 16:48

回复 2# Batcher


    是的   只需要输入以日期为格式的文件名  批量修改为2000.*
作者: qixiaobin0715    时间: 2021-5-21 17:05

20210202与20210201有什么对应关系吗?没搞明白
作者: newswan    时间: 2021-5-21 19:03

把 0\yyyymmdd  复制到 log\2000
那么,会重名,覆盖?
作者: qixiaobin0715    时间: 2021-5-21 22:02

回复 6# 1152
还是留给本人来作答吧,你也是猜,难道我就不会猜?你的刷分行为我觉得已经影响到了论坛的秩序,请自重吧。
作者: 1152    时间: 2021-5-22 09:49

回复 6# qixiaobin0715


    不是,是因为他就是
  1. echo %date:~0,4%%date:~5,2%%date:~8,2%
复制代码

作者: 1152    时间: 2021-5-22 09:50

回复 6# qixiaobin0715


    我没有刷分!
作者: qixiaobin0715    时间: 2021-5-22 10:17

回复 8# 1152
那你就尽你所能来点实在的,帮助别人多解决点实际问题吧。
作者: 1152    时间: 2021-5-22 11:42

回复 9# qixiaobin0715


    好的
作者: 1152    时间: 2021-5-22 11:42

回复 9# qixiaobin0715


    谢谢指导
作者: qixiaobin0715    时间: 2021-5-22 14:34

回复 1# weikwok
是这样吗?没说清楚只有猜了:
  1. @echo off
  2. set /p Filename=请输入指定字符:
  3. md log
  4. set var=jpg.jpg xls.plg xlc.plr xxl.alr
  5. setlocal enabledelayedexpansion
  6. for %%i in (%var%) do set %%~xi=.%%~ni
  7. for %%a in (%Filename%.*) do copy "%%a" "log\2000!%%~xa!"
  8. pause
复制代码

作者: 1152    时间: 2021-5-22 17:35

回复 12# qixiaobin0715


    复制!!!!
作者: qixiaobin0715    时间: 2021-5-22 18:46

回复 13# 1152
有什么问题吗?
作者: 1152    时间: 2021-5-22 21:03

回复 14# qixiaobin0715


    是直接复制
作者: Batcher    时间: 2021-5-22 21:12

回复 1# weikwok


test.bat 放到 0 文件夹下执行
  1. @echo off
  2. cd /d "%~dp0"
  3. set "NewFolder=log"
  4. if not exist "%NewFolder%" (
  5.     md "%NewFolder%"
  6. )
  7. set "input=not exist dummy string"
  8. set /p "input=请输入日期:"
  9. for /f "delims=" %%i in ('dir /b /a-d %input%*') do (
  10.     copy /y "%%i" "%NewFolder%\2000%%~xi"
  11. )
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2