cmd バッチ ファイルを使用してファイル名のみを取得し、他のフォルダーにコピーする方法

cmd バッチ ファイルを使用してファイル名のみを取得し、他のフォルダーにコピーする方法

バッチ ファイルを使用してファイル名のみを取得する方法を教えてください。コピーしなくても済むように、別のフォルダーに存在するかどうかを確認するループを作成する必要があります。

答え1

次のループではFORファイル名と拡張子を取得します。

for %%f in ("C:\Source\*") do ( echo File: %%~nxf )

ファイルがターゲット ディレクトリに存在するかどうかを確認し、存在しない場合はコピーするには、次の手順を実行します。

for %%f in ("C:\Source\*") do (
  if not exist "C:\Target\%%~nxf" (
    echo Copy from source to target: %%~nxf
    copy "%%f" "C:\Target\%%~nxf" )
)

FORループ パラメータの詳細については、FOR /?コマンド ラインを参照してください。

関連情報