Batch file 将windows环境中的文件移动到包含部分文件名的文件夹
我的主文件夹中有这样的文件。连字符的文件名是此人的姓名:Batch file 将windows环境中的文件移动到包含部分文件名的文件夹,batch-file,Batch File,我的主文件夹中有这样的文件。连字符的文件名是此人的姓名: Ran Perhar Training Records.pdf 运行Perhar.docx Ran Perhar Travel Records.xlsx Dove John Training Records.pdf Dove John.docx Dove John Travel Records.xlsx 每个人有4-5个文件,总共约200人 我想:根据姓名为每个人创建一个文件夹。例如:Ran Perhar。如果此文件夹不存在,请创建它。如
@echo off
pushd "c:\persons"
for /f "tokens=1,* delims=-" %%a in ('dir /a:-d /b *') do (
md "%%~a" >nul 2>nul
move "%%~a%%~b" "%%~a\" /y
)
是否希望基于名称的文件夹成为主目录的子文件夹?是否接受PowerShell脚本?将在名为Records的文件夹中创建基于名称的文件夹,该文件夹将与Ran Perhar Training Records等文件位于同一目录中。此解决方案有效。一旦我理解了格式/语法,我做了一些更改。我想从心底感谢你。谢谢你。这给了我一个答案和学习的灵感。我喜欢学习批处理编程,但不了解任何在线资源或书籍。有什么建议吗?请让我知道。现在我们可以考虑这个问题的答案和关闭。多亏了Stack Overflow的组合天才。一切都很好,请小心。@RanPerhar您可以单击回答点下方的勾号来接受它。至于教程-好的起点是:-信息有点过时,但仍然是批处理文件的稳定介绍。这可能是批处理命令的最佳参考,但有时缺乏详细信息。在这里,您可以找到一个很好的即用函数,它拥有最可行的批处理脚本社区。npocmaka,我希望单击什么勾号。对不起,我搞不懂这个。感谢您提供的有关旅游和进一步知识的建议。冉佩哈