Changes the permissions of a file or all files inside specified directories. Right now it has effect only under Unix or NonStop Kernel (Tandem). The permissions are also UNIX style, like the argument for the chmod command.

指定したファイル、または指定したディレクトリ中の全てのファイルのパーミッションを変更します。 現時点では、Unix または ノンストップカーネル(Tandem)上でのみ効果があります。 パーミッションは、chmod コマンドの引数のような UNIX 形式です。

See the section on directory based tasks, on how the inclusion/exclusion of files works, and how to write patterns.

ファイルの指定や除外の方法、パターンの書き方については、 ディレクトリベースのタスクの節をご覧ください。

This task holds an implicit FileSet and supports all of FileSet's attributes and nested elements directly. More sets can be specified using nested <fileset> or <dirset> (since Ant 1.6) elements.

このタスクには暗黙的なFileSetがあり、 filesetの全ての属性と内部要素を直接サポートしています。 <fileset> 要素や <dirset>要素(Ant 1.6〜)を使えば、 さらにセットを追加できます。

Starting with Ant 1.6, this task also supports nested filelists.

Ant 1.6から、filelist 内部要素にも対応しています。



Attribute Description Required
file the file or single directory of which the permissions must be changed. exactly one of the two or nested <fileset/list> elements.
dir the directory which holds the files whose permissions must be changed.
perm the new permissions. Yes
includes comma- or space-separated list of patterns of files that must be included. No
excludes comma- or space-separated list of patterns of files that must be excluded. No files (except default excludes) are excluded when omitted. No
defaultexcludes indicates whether default excludes should be used or not ("yes"/"no"). Default excludes are used when omitted. No
parallel process all specified files using a single chmod command. Defaults to true. No
type One of file, dir or both. If set to file, only the permissions of plain files are going to be changed. If set to dir, only the directories are considered.
Note: The type attribute does not apply to nested dirsets - dirsets always implicitly assume type to be dir.
No, default is file
maxparallel Limit the amount of parallelism by passing at most this many sourcefiles at once. Set it to <= 0 for unlimited. Defaults to unlimited. Since Ant 1.6. No
verbose Whether to print a summary after execution or not. Defaults to false. Since Ant 1.6. No
属性 説明 必須
file パーミッションを変更したいファイルまたはディレクトリ どちらかひとつ、または<fileset>内部要素
dir パーミッションを変更したいファイルが格納されているディレクトリ
perm 新しいパーミッション Yes
includes ファイルを選択するパターンの、カンマまたは空白文字で区切られたリスト No
excludes ファイルを除外するパターンの、カンマまたは空白文字で区切られたリスト。 指定しなかった場合、(デフォルト除外ファイルを除いて)何も除外されない。 No
defaultexcludes デフォルトの除外ファイルを使うかどうか ("yes"/"no")。 指定しなかった場合、使用される。 No
parallel 一回のchmod コマンドで一度に複数のファイルを扱うかどうか。デフォルトは true。 No
type filedirbothのいずれか。 fileを設定した場合、 通常のファイルのパーミッションのみが変更される。 dirを設定した場合、 ディレクトリだけが対象となる。 注:type属性は dirset内部要素に対しては適用されない ―― dirsetは常にdirを指定しているとみなされる。 No、デフォルトはfile
maxparallel 一回の実行につき、ファイルを最大いくつ処理するかを制限する。 0以下を指定すると、無制限。デフォルトは無制限。 Ant 1.6〜 No
verbose 実行後に結果を表示するかどうか。デフォルトはfalseAnt 1.6〜 No


<chmod file="${dist}/" perm="ugo+rx"/>

makes the "" file readable and executable for anyone on a UNIX system.

UNIXシステムにおいて、 ""について、全ての人が読み取り可能、実行可能に設定します。

<chmod file="${dist}/" perm="700"/>

makes the "" file readable, writable and executable only for the owner on a UNIX system.

UNIXシステムにおいて、 ""について、所有者のみが 読み取り可能、書き込み可能、実行可能に設定します。

<chmod dir="${dist}/bin" perm="ugo+rx"

makes all ".sh" files below ${dist}/bin readable and executable for anyone on a UNIX system.

UNIXシステムにおいて、 ${dist}/binディレクトリ内のすべての "" について、 全ての人が 読み取り可能、実行可能に設定します。

<chmod perm="g+w">
  <fileset dir="shared/sources1">
    <exclude name="**/trial/**"/>
  <fileset refid="other.shared.sources"/>

makes all files below shared/sources1 (except those below any directory named trial) writable for members of the same group on a UNIX system. In addition all files belonging to a FileSet with id other.shared.sources get the same permissions.

UNIXシステムにおいて、 shared/sources1ディレクトリ内にある、trialという名前のディレクトリ内を除くすべてのファイル、および other.shared.sources という id の FileSet で指定された一連のファイルについて、 同一グループのメンバに対して 書き込み可能に設定します。

<chmod perm="go-rwx" type="file">
  <fileset dir="/web">
    <include name="**/*.cgi"/>
    <include name="**/*.old"/>
  <dirset dir="/web">
    <include name="**/private_*"/>

keeps non-owners from touching cgi scripts, files with a .old extension or directories begining with private_. A directory ending in .old or a file begining with private_ would remain unaffected.

所有者以外による、cgiスクリプト、.old拡張子をもつファイル、 private_で始まるディレクトリへのアクセスを禁止します。 .oldで終わるディレクトリや、private_ で始まるファイルについては変更しません。

Copyright © 2000-2004 The Apache Software Foundation. All rights Reserved.
[訳注:これは漆島賢二の訳を参考に、的場が翻訳しました。日本語訳に対するコメントがあれば report@jajakarta.orgに送ってください]