基于文件名的文件夹名称

时间:2012-01-25 16:35:47

标签: batch-file

这不是一个编码问题。我需要将所有文件放入单独的目录中,以便每个文件都有自己的目录,其名称基于文件名。 所以在我做一个应用程序之前,有没有人知道任何可以做到这一点的软件?像Automator或其他东西。

1 个答案:

答案 0 :(得分:4)

无需构建应用程序。从Windows命令行运行的这个简单的单行程序将根据文件的根名称将目录中的每个文件移动到子目录中。

for %f in (*) do @(md "%~nf"&move "%f" "%~nf")>nul 2>&1

具有相同基本名称但扩展名不同的两个文件将被移动到同一目录中。例如,“test.txt”和“text.doc”都将被移动到名为“test”的目录中

任何没有扩展名的文件都不会被移动。

如果要从批处理文件中运行,则

@echo off
for %%f in (*) do (
  md "%%~nf"
  move "%%f" "%%~nf"
) >nul 2>&1

你的要求不是很清楚。如果您的要求不同,那么可以相当容易地修改脚本以满足您的需求。