批处理文件:如何将所有 .doc 文件备份到文件夹

Batch-file: how to backup all .doc files to a folder

我有这个小脚本,用于将文件夹中的所有 *.doc 文件备份到 _z 子文件夹中。我刚刚注意到它不能正常工作,当 _ 是应该备份的 *.doc 的文件名的一部分时。

谁能向我解释一下问题的根源以及如何纠正问题的建议吗?

mkdir _z
copy *.doc _z\*"_""%date:/=-%"" ""%time::=-%".doc

目前你告诉它复制下划线之前的所有内容,如果一个存在,否则它会创建一个如果不存在。这样下划线之后的文本将被忽略。尝试 for 循环

@echo off
mkdir "_z">nul 2>&1
for %%i in (*.doc) do copy "%%~i" "_z\%%~ni_%date:/=-% %time::=-%%%~xi"