1

バッチファイルを使用してデフォルトのフォルダーに入れたいのですが、アカウント名がフォルダーの途中にあります。dos コマンド プロンプトで使用できるスクリプトはありますか?

888123_AAAA_20130313.pdf  
888123_BBBB_20130313 (2).pdf  
888123_CCCC_20130313_2.pdf  
777456_AAAA_20130313.pdf  
777456_BBBB_20130313 (2).pdf  
777456_CCCC_20130313_2.pdf  

デフォルトのフォルダ:

999-888123-03
666-777456-01
4

1 に答える 1

0
@echo off
setlocal EnableDelayedExpansion

rem Create the list of default folders
set folder[888123]=999-888123-03
set folder[777456]=666-777456-01

rem Copy the files
for /F "tokens=1* delims=_" %%a in ('dir /B /A-D *.pdf') do (
    copy "%%a_%%b" "!folder[%%a]!"
)

EDIT : 以下のバージョンでは、デフォルト フォルダのリストを初期化する必要はありません。

@echo off
for /F "tokens=1* delims=_" %%a in ('dir /B /A-D *.pdf') do (
   for /D %%d in (*_%%a_*) do (
      copy "%%a_%%b" "%%d"
   )
)
于 2013-05-16T12:07:42.020 に答える