コマンドプロンプトの「CACLSコマンド」とは?
Windows NT時代より使用可能なコマンドで、現在でも互換性を維持目的のために使用可能となっているコマンドです。後継のコマンドは、「ICACLS」コマンドが用意されています。この記事では、コマンドプロンプトの「CACLSコマンド」の使い方についてご紹介していきます。
コマンドプロンプトの「CACLSコマンド」の使い方
それでは、コマンドプロンプトの「CACLSコマンド」の使い方を説明していきます。まずは、CACLSコマンドの構文から説明します。CACLSコマンドの構文は「CACLS ファイル名 [/T] [/M] [/L] [/S[:SDDL]] [/E] [/C] [/G ユーザー名:アクセス権] [/R ユーザー名 […]] [/P ユーザー名:アクセス権 […]] [/D ユーザー名 […]]」となっています。ファイル名を指定する際は、対象のファイル・フォルダの名前を絶対パスか相対パスで指定します。またファイル名には、ワイルドカードの「?」・「*」を使用することができます。CACLSコマンドの構文にて使用しているスイッチの説明は、下記の通りとなります。
- /T:カレントフォルダとすべてのサブフォルダにある条件に一致するファイルを、操作対象にする。
- /L:シンボリックリンクのリンクターゲット(リンクが示している実際のファイル本体)ではなく、シンボリックリンクそのものを操作対象にする。
- /M:フォルダにマウントされているボリュームのアクセス制御リスト(ACL・Access Contrl Language)を変更する。
- /S:既存のACLをセキュリティ記述子(SDDL・Security Descriptor Definition Language)で指定したACLで上書きする。/Sは、「/E・/G・/R・/P・/D」スイッチと併用することはできない。SDDLを省略した場合、随意アクセス制御リスト(DACL・Discretionary Access Control List)のSDDL文字列を表示する。
- /E:既定ではACL全体を上書き編集するが、このスイッチを指定することで既存のACLの一部を置換する。
- /C:アクセス拒否エラーを無視して操作を続行する。
- /G:「/G ユーザー名:アクセス権」の形式で指定し、アクセス権を付与する。「R:読み取り・W:書き込み・C:変更・F:フルコントロール」
- /R:「/R ユーザー名」の形式で指定する。/Eスイッチと併用することで、指定したユーザーのアクセス権を削除する。ユーザー名はスペースで区切って複数指定することも可能。
- /P:「/P ユーザー名:アクセス権」の形式で指定する。指定したユーザーのアクセス権を次のいずれかのアクセス権で置換する。ユーザー名とアクセス権のセットは、複数指定することも可能。「N:アクセス権なし・R:読み取り・W:書き込み・C:変更・F:フルコントロール」
- /D:「/D ユーザー名」の形式で指定する。指定されたユーザーのアクセスを拒否する。ユーザー名はスペースで区切って複数指定することも可能。拒否のアクセス権の設定は、許可のアクセス権より優先される。