【发布时间】:2014-12-27 05:36:33
【问题描述】:
我儿子在圣诞节收到了一块伟易达儿童智能手表。该软件不会自动下载任何图片、视频或录音。它只是在我的电脑下显示为一个驱动器。我想每天晚上清除手表并将文件合并到我们其他家庭照片中,使用相同的文件夹结构。我可以通过剪切粘贴手动执行此操作,但我想连接手表并运行批处理脚本。
源文件位于 E:\DCIM\100VTECH。
文件夹的目标目录是C:\Users\Dan\OneDrive\Watch。
因此,例如,如果这些是当前文件:
E:\DCIM\100VTECH\100_0001.JPG - Created 12/25/2014
E:\DCIM\100VTECH\100_0050.AVI - Created 12/26/2014
E:\DCIM\100VTECH\100_0053.JPG - Created 12/26/2014
我希望得到这样的结果:
C:\Users\Dan\OneDrive\Watch\2014-12-25\100_0001.JPG
C:\Users\Dan\OneDrive\Watch\2014-12-26\100_0050.AVI
C:\Users\Dan\OneDrive\Watch\2014-12-26\100_0053.JPG
E:\DCIM\100VTECH\ = empty
到目前为止,我已经使用这些页面中的信息来创建脚本,但现在我被卡住了。 http://itproguru.com/expert/2013/02/how-to-create-filename-variable-with-date-and-time-from-command-cmd-batch-file-for-use-in-creating-unique-filename/ How to use batch job to add the file "create date" into all the files in a directory?
这是我目前所拥有的:
@echo off &setlocal disableDelayedExpansion
set "startfolder=E:\DCIM\100VTECH"
set Stamp=booger
cd /d "%startfolder%"
for %%a in (*) do (
echo --------------------------------------------------
echo FileVar IS %%a
for /f "delims=." %%b in ('wmic datafile where "name='%startfolder:\=\\%\\%%~a'" get lastmodified^|find "."') do (
echo Temp Is %%~b
set Stamp=%%b
echo Stamp IS %Stamp%
set YearVar=%Stamp:0,4%
echo YearVar IS %YearVar%
echo ren "%startfolder%\%%~a" "%%~b.txt"
)
)
我觉得我很接近,但我不知道如何解析 %%b 字符串(这是一个完整的日期和时间戳,例如“20141225105524”。当我尝试设置 %Stamp% 和%YearVar%,他们没有设置!
【问题讨论】:
标签: windows batch-file command-line windows-7