0

例: 1 つのディレクトリに次のような名前のファイルがたくさんあります。

スタッフ1.jpg
スタッフ1 (1).jpg
スタッフ1 (2).jpg
スタッフ2.jpg
スタッフ2 (1).jpg
スタッフ2 (2).jpg
...や。。など。

バッチ スクリプトで、stuff1*ファイルを という名前のサブフォルダーに移動する必要がありますstuff1stuff2*サブフォルダーへのファイル、名前付きstuff2など。

このバッチスクリプトを見つけました:

@echo off
for /f "delims=" %%a in ('dir /b') do (
if not "%%~fa"=="%~f0" (
md "%%~na" 2>nul
if exist "%%a" move "%%~na.*" "%%~na"
)
)

stuff1 (1).jpgただし、とstuff1 (2).jpgファイル用に別のディレクトリを作成します

編集: stuff1およびstuff2は単なる例であり、任意の 1 語の文字列にすることができます。そして私の悪い英語でごめんなさい

4

2 に答える 2

1

「1 語の文字列」が「最初のドットまたはスペースの前の文字列」を意味する場合、以下のバッチ ファイルはそれを行います。「1 語の文字列」が他の文字で区切られている可能性がある場合は、それらを"delims=...FOR コマンドの一部に含めます (最後の場所にスペースを残します)。

@echo off
for %%a in (*.*) do (
   for /F "delims=. " %%b in ("%%a") do (
      if not exist "%%b\" md "%%b"
      if exist "%%a" move "%%b*.*" "%%b"
   )
)
于 2013-07-21T02:17:40.240 に答える