コピーしたいファイルを記述してあるテキストファイルを読んでファイルをコピーするバッチファイル。

2024年5月12日

バッチファイル

@echo off
set "source_file=path\to\source.txt"  REM ファイル名が書かれているテキストファイルのパス
set "destination_folder=path\to\destination" REM コピー先フォルダーのパス

for /f "tokens=*" %%a in (%source_file%) do (
    echo コピー中: "%%a"
    copy "%%a" "%destination_folder%"
)

echo コピーが完了しました。
pause

番号をつけてコピーするバッチファイル

@echo off
setlocal enabledelayedexpansion

set "source_file=path\to\source.txt"  REM ファイル名が書かれているテキストファイルのパス
set "destination_folder=path\to\destination" REM コピー先フォルダーのパス
set "counter=1"

for /f "tokens=*" %%a in (%source_file%) do (
    set "filename=00!counter!"
    set "filename=!filename:~-3!"
    echo コピー中: "%%a"
    copy /Y "%%a" "%destination_folder%\!filename!%%~xa" > nul
    set /a "counter+=1"
)

echo コピーが完了しました。
pause

入力フォルダを指定するバッチファイル

REM @echo off

set "source_file=path\to\source.txt"  REM ファイル名が書かれているテキストファイルのパス
set "source_folder=path\source" REM コピーフォルダーのパス
set "destination_folder=path\to\destination" REM コピー先フォルダーのパス

setlocal enabledelayedexpansion
set "counter=1"
for /f "tokens=*" %%a in (%source_file%) do (
    set "filename=00!counter!"
    set "filename=!filename:~-2!"
    echo コピー中: "%%a"
    copy /Y "%source_folder%\%%a" "%destination_folder%\!filename!%%~xa" > nul
    set /a "counter+=1"
)

echo コピーが完了しました。
pause

bat,windows

Posted by eightban