【bat】バッチファイルでファイルをコピーする方法

バッチファイルを使ってファイルをコピーする方法は、特に定期的なバックアップやファイルの管理に便利です。この記事では、copy コマンドと xcopy コマンドを使用した基本的なファイルコピーの方法を紹介します。

単純なファイルコピー (copy コマンド)

まず、基本的なファイルコピーの方法として copy コマンドを使います。これは、特定のファイルを別の場所にコピーするために使用されます。

@echo off
copy "C:\path\to\source\file.txt" "C:\path\to\destination\file.txt"

このスクリプトでは、source\file.txt から destination\file.txt にファイルをコピーします。

フォルダ全体をコピー (xcopy コマンド)

次に、フォルダ全体をコピーする方法です。xcopy コマンドを使用すると、ディレクトリやサブディレクトリを含めてコピーできます。

@echo off
xcopy "C:\path\to\source\folder" "C:\path\to\destination\folder" /E /I /H

ここで、オプションの意味は以下の通りです。

  • /E : 空のディレクトリも含めてすべてコピーします。
  • /I : 送信先がディレクトリであると仮定します。
  • /H : 隠しファイルやシステムファイルもコピーします。

ファイルが存在する場合の確認 (if 文)

ファイルが既に存在する場合に確認したり、上書きしないようにする方法もあります。以下の例では、ファイルの存在を確認し、存在する場合はコピーをスキップします。

@echo off
set source="C:\path\to\source\file.txt"
set destination="C:\path\to\destination\file.txt"

if exist %destination% (
    echo ファイルは既に存在します。
) else (
    copy %source% %destination%
    echo ファイルをコピーしました。
)

このスクリプトでは、目的のファイルが既に存在するかどうかを確認し、存在する場合はメッセージを表示し、存在しない場合はコピーを行います。

まとめ

バッチファイルを使ったファイルコピーは、シンプルかつ効果的な方法であり、日常のタスクを自動化するのに非常に役立ちます。ここで紹介した基本的な方法を応用して、自分のニーズに合わせたスクリプトを作成してみてください。