Programming Field

Replace - DOS/コマンドプロンプト コマンド一覧

対象のディレクトリにあるファイルすべてを指定したファイルで一括して置き換えます。または、指定したファイルを対象のディレクトリに追加します。

構文

replace[.exe] <source-file> <target-path> /A [/P] [/R] [/W]
replace[.exe] <source-file> <target-path> [/S] [/U] [/P] [/R] [/W]

オプション一覧

<source-file> 置き換え元のファイルを指定します。ワイルドカードも指定できます。
<target-path> 置き換え先のディレクトリを指定します。
/A

指定したファイル(<source-file>)が対象のディレクトリ(<target-path>)に存在しない場合、それを追加します。サブディレクトリには追加しません。

/A を指定しなかった場合は、指定したファイル(<source-file>)と一致するファイル名が対象のディレクトリ(<target-path>)にある場合、それらを置き換えます。

/S 対象のディレクトリ(<target-path>)のサブディレクトリにあるファイルも置き換え対象となります。/A と同時に指定することはできません。
/U 置き換え対象となるファイルが古い場合のみ置き換えをします。/S と /U を同時に指定することもできます。
/P ファイルの置き換えや追加を行う際、確認のプロンプトを表示します。
/R 読み取り専用(書き込み禁止)ファイルも置き換え/追加対象とします。
/W <source-file>の検索を開始する前にディスクの挿入を待ちます。この状態のとき、Enterを押すと検索を開始します。

解説

このコマンドは、隠しファイルやシステムファイルの属性を持つファイルの更新をすることはできません。必要に応じてAttribコマンドを使って属性を解除してから行ってください。

Replaceは特有の終了コードを返します。終了コードの意味は以下の通りです。

意味
0コマンドは正常に終了しました。
1このコマンドはOSと互換性がありません。
2送り元ファイル(<source-file>)が見つかりませんでした。
3送り元のパス(<source-file> にディレクトリ名が含まれていた場合そのディレクトリ)または置き換え先のパスが見つかりませんでした。
5置き換え対象のファイルに対する書き込み権限がありません。([Windows NT] ファイルのセキュリティ設定に起因する書き込み権限の不足の場合、このエラーコードは返されません。)
8メモリが不足しています。
11コマンドの書式が間違っています。

サンプル

replace D:\*.log E:\logs /U

「D:\」にある拡張子が「log」であるファイルのうち、同じファイル名を持つファイルが「E:\logs」ディレクトリにある場合、それらをコピー(置き換え)します。この際、同じファイル名が「E:\logs」に存在する場合、ファイルの日付(更新日時)がそのディレクトリ内のファイルより古い場合は置き換えません。