Batch file 根据文件名称的一部分将文件移动到文件夹中,但不首先创建文件夹

Batch file 根据文件名称的一部分将文件移动到文件夹中,但不首先创建文件夹,batch-file,Batch File,我有一个这样的文件夹列表 Il Piccolo Sceriffo Marvel Mix Orfani Plutos Oscar Bestsellers Pecos Bill Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr Marvel Mix 006 [1996-09][ITA][c2

我有一个这样的文件夹列表

Il Piccolo Sceriffo
Marvel Mix 
Orfani 
Plutos
Oscar Bestsellers
Pecos Bill
Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr
Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr
Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
Oscar Bestsellers 1461 - Pippo Pensieri In Liberta' (Mondadori 2004-06).cbr
Pecos Bill 047 - Serie 3 - 10-11-12 (Dardo 1997-04) (c2c) [Ciupie - Dinofelix].cbr
Il Piccolo Sceriffo
|
|--- Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
|--- Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr

Marvel Mix 
|
|--- Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr

Orfani 
|
|--- Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
我有这样的文件

Il Piccolo Sceriffo
Marvel Mix 
Orfani 
Plutos
Oscar Bestsellers
Pecos Bill
Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr
Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr
Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
Oscar Bestsellers 1461 - Pippo Pensieri In Liberta' (Mondadori 2004-06).cbr
Pecos Bill 047 - Serie 3 - 10-11-12 (Dardo 1997-04) (c2c) [Ciupie - Dinofelix].cbr
Il Piccolo Sceriffo
|
|--- Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
|--- Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr

Marvel Mix 
|
|--- Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr

Orfani 
|
|--- Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
这样移动文件夹中的文件

Il Piccolo Sceriffo
Marvel Mix 
Orfani 
Plutos
Oscar Bestsellers
Pecos Bill
Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr
Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr
Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
Oscar Bestsellers 1461 - Pippo Pensieri In Liberta' (Mondadori 2004-06).cbr
Pecos Bill 047 - Serie 3 - 10-11-12 (Dardo 1997-04) (c2c) [Ciupie - Dinofelix].cbr
Il Piccolo Sceriffo
|
|--- Il Piccolo Sceriffo 41 (Dardo 1994-03) [c2c dinofelix].cbr
|--- Il piccolo sceriffo 44 (Dardo 1994-06) [c2c mystere e dinofelix].cbr

Marvel Mix 
|
|--- Marvel Mix 006 [1996-09][ITA][c2c][Cer8 - Miao Films].cbr

Orfani 
|
|--- Orfani 042 - Terra 3 - Oltre il muro (2017-03).cbr
我使用这个脚本

@echo off
setlocal enabledelayedexpansion
pushd %1
for /F "USEBACKQ tokens=*" %%a in (`dir /b /a:-d`) do (
    set "_file=%%a"
    for /D %%b in (*) do (
        if NOT "x!_file:%%b=!" == "x!_file!" (
            move "%%a" "%%b"
        )
    )
)
popd
问题:如果要移动,我需要先创建文件夹列表。但是我以前不想创建文件夹
是否有一种方法可以创建文件夹,以最接近我给出的示例的方式根据其名称移动其文件

编辑:我在使用脚本之前创建了文件夹。我尝试的是通过脚本创建新文件夹,而不必首先手动创建它们

我的名字有四种模式:

名称空间+数字
名称空间
-

名称空间名称空间+数字
名称空间名称空间+
-

例如:

艾伦02
艾伦-
艾伦·福特09

Alan Ford-

此答案基于您定义的模式
一些字符串,带空格或不带空格
,后跟
空格
,后跟数字或
-
。 不能按空格分割,因为第一个(想要的)字符串中可能有一个或多个空格,但可以按数字和
-
分割。不要忘记从找到的字符串中删除最后一个字符(空格):

@echo off
setlocal enabledelayedexpansion
for %%a in (*.cbr) do (
  for /f "delims=0123456789-" %%b in ("%%a") do (
    set "folder=%%b"
    ECHO md "!folder:~0,-1!" 2>nul
    ECHO move "%%a" "!folder:~0,-1!\"
  )
)
出于安全原因,我解除了
md
move
命令的防护。排除故障后,卸下回声


注意:如果文件名包含感叹号,则会出现问题。

不清楚。。您想将文件移动到新文件夹,但不想创建这些文件夹??不,我在使用脚本之前创建了这些文件夹。我尝试的是通过脚本创建新文件夹,而不必首先手动创建它们。如果您已经预先创建了目录,则向后执行任务。执行目录列表,获取这些目录的名称,并搜索以这些名称开头的文件。如果找到,请将这些文件移动到现有目录。示例:
For/D%%G In(*)Do If Exist“%%G*.cbr”Move/Y“%%G*.cbr”“%%G”
;或者执行此操作并忽略不存在的目录的任何错误消息,例如,
for/D%%g In(*)do Move/Y“%%g*.cbr”“%%g”2>NUL
。如果您的问题是希望在脚本本身中预创建目录,则需要制定一个分割文件名的模式。看起来,根据您提供的名称,您需要做的就是在第一个数字(或数字序列)之前的空格字符处拆分它。但是,我怀疑,在现实世界中,您永远不会希望目录名本身不包含以数字开头的字符串,并且希望保留在名称中。当您确定了确切的模式后,请更新代码,以包含您在所需任务中的尝试。本网站不会为您编写代码,我们只会帮助您用自己的代码解决一个特定且可复制的问题。您当前提交的内容不执行文件名拆分,不使用模式,也不尝试您在问题和后续评论中列出的任务。顺便说一下,我已经从你的问题中删除了[]标记和引用。您的帖子中没有powershell代码,这不是请求服务。