Move

説明

一つのファイルを新しいファイルや、ディレクトリに移動したり、 ファイルの集合を新しいディレクトリに移動したりします。 デフォルトで、 既に移動出力先にファイルが存在する場合、上書きされます。 overwrite 属性が off の場合、 ソースファイルが移動先ファイルよりも新しいか、 移動先ファイルが存在しない場合にのみ、ファイルが移動します。

todir ディレクトリへ移動するファイルを選択するために、 FileSet が使われます。

パラメータ

属性 説明 必須
file 移動するファイル 一つのfileあるいは、 少なくとも一つのネストされたfileset要素
preservelastmodified 移動されたファイルに、 オリジナルソースファイルと同じ最終更新時刻を設定します。 (注意: Java 1.1では無視) No; デフォルトはfalse
tofile 移動先のファイル file 属性には、 tofiletodir のいずれかが使えます。 ネストされた fileset 要素には、 ファイルセットの数が1よりも大きいか、 dir 属性のみしか <fileset> 要素中で指定されていないか、 file 属性も指定されている場合、 todir のみが指定可能です。
todir 移動先ディレクトリ
overwrite 移動先のファイルが新しくても既存のファイルを上書きします。 (デフォルトは"true") No
filtering 移動の際に、トークンフィルタを使うかどうか示します。 フィルタの仕組みについての説明は filter タスクをご覧ください。 No
flatten ソースディレクトリのディレクトリ構造を無視して、 全てのファイルを todir 属性で指定された一つのディレクトリに移動します。 (デフォルトは "false") flatten mapper を使っても同じ効果が得られることに注意してください。
[訳注]原文には "copy all files into" とありますが、 "copy" は "move" の間違いだと思います。
No
includeEmptyDirs ネストした fileset に入っている空のディレクトリを移動するか。 デフォルトは"yes"
[訳注]原文には "Copy empty directories ..." とありますが、 "Copy" は "Move" の間違いだと思います。
No
failonerror 移動するファイルが存在しない場合や、 ネストされたファイルセットの1つが存在しないディレクトリを指していた場合や、 移動の実行中にエラーが発生した場合に、 警告メッセージをログ出力しますが、ビルドを停止しません。
[訳注]原文には "when the file to copy does not exist ..." とありますが、"copy" は "move" の間違いだと思います。
No; デフォルトはtrue
verbose 移動されるファイルのログを取る No; デフォルトはfalse
encoding フィルタを使用して移動する際に、 ファイルにはこのエンコーディングが使われていると仮定します。 Ant 1.5 から No; デフォルトは JVM のデフォルトエンコーディング
outputencoding ファイルの書き込みに使われるエンコーディング。 Ant 1.6 から No; デフォルトは encoding 属性が指定された場合はその値、 指定されなかった場合は JVM のデフォルトエンコーディング
enablemultiplemappings
[訳注]原文では "enablemultiplemapping" と単数形ですが、 正しくは、複数形の "enablemultiplemappings" だと思います。 複数形で指定しないとエラーになります。
値が true の場合は、 ソースパスの各ファイル/ディレクトリに対する(1つ以上の)マッピング結果をすべて処理します。 false の場合は(マッピング結果の)最初のファイルかディレクトリだけを処理します。 この属性はネストした mapper 要素が存在する場合のみ効果があります。 Ant 1.6 から No; デフォルトはfalse

ネストされる要素により指定されるパラメータ

mapper

mapper 要素をネストすることにより、 ファイル名の変換を定義できます。 <move> で使われるデフォルトの mapper は identity です。
[訳注]原文には "The default mapper used by <copy> is ..." とありますが、"<copy>" は "<move>" の間違いだと思います。

filterchain

move タスクはネストされた FilterChain をサポートしています。

<filterset> 要素と <filterchain> 要素を、 ひとつの <move> タスク内で同時に使用した場合は、 まず最初に全ての <filterchain> 要素が処理されて、 そのあとに <filterset> 要素が処理されます。

一つのファイルの移動 (ファイル名の変更)

  <move file="file.orig" tofile="file.moved"/>

一つのファイルをディレクトリに移動

  <move file="file.orig" todir="dir/to/move/to"/>

あるディレクトリを別のディレクトリに移動

  <move todir="new/dir/to/move/to">
    <fileset dir="src/dir"/>
  </move>

ファイルの集合を、あるディレクトリに移動

  <move todir="some/new/dir">
    <fileset dir="my/src/dir">
      <include name="**/*.jar"/>
      <exclude name="**/ant.jar"/>
    </fileset>
  </move>

あるディレクトリ内の全てのファイルのファイル名に ".bak" を追加

  <move todir="my/src/dir" includeemptydirs="false">
    <fileset dir="my/src/dir">
      <exclude name="**/*.bak"/>
    </fileset>
    <mapper type="glob" from="*" to="*.bak"/>
  </move>

Copyright © 2000-2004 The Apache Software Foundation. All rights Reserved.

[訳注:これは漆島賢二、菅原敦が翻訳しました。日本語訳に対するコメントがあれば report@jajakarta.orgに送ってください]
[校正の方へ]
ちょっと訳注が多くて、「読んでいて気が散るかなぁ。」と思いますし、
訳注の文章自体も、ちょっと冗長すぎるかもしれないと感じてます。
いつでも消せるものですので、入れておきます。