Windowsでは、フォルダーやファイルの特徴を表すための設定として、フォルダーやファイルに属性と呼ばれる情報が付与されていることがあります。
良く知られている属性としては「読み取り専用」「隠しファイル」などがありますが、フォルダーやファイルに付与されている属性は、ぱっと見では判別できません。
そこでここでは、Windows 10でフォルダーやファイルに付与されている属性を確認したり、属性を設定する方法を紹介します。

目次
動作環境
この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。
ソフトウェア | バージョン |
---|---|
Windows 10 Pro 64bit | 21H1 |
属性の一覧
フォルダーやファイルに付与されるおもな属性は、次のとおりです。
属性 | 説明 |
---|---|
R, ReadOnly | 読み取り専用属性 |
H, Hidden | 隠しファイル属性 |
S, System | システムファイル属性 |
D, Directory | ディレクトリ属性(フォルダーに付与される) |
A, Archive | アーカイブ属性 |
C, Compressed | 圧縮属性 |
E, Encypted | 暗号化属性 |
上記以外にどのような属性があるかについては、WindowsコマンドやPowerShellコマンドレットで確認することができます。
> attrib /?
PS> [System.Io.FileAttributes] | Get-Member -Static -MemberType property
フォルダーやファイルの属性を確認する
フォルダーやファイルに付与されている属性を確認するときは、エクスプローラーやコマンドで確認できます。
エクスプローラーで確認する
エクスプローラーで確認するときは、表示形式を「詳細」してから、表示する項目に「属性」を追加することで、以下の画面のように付与されている属性を確認できます。
たとえば、下の画像では「sample.txt」の属性が「RA」と表示されていますが、これは「R:読み取り専用属性」と「A:アーカイブ属性」が付与されていることを表しています。
Windowsコマンドで確認する
Windowsコマンドで確認するときは、基本的には「attrib」コマンドを利用し、圧縮属性を確認するときは「compact」コマンド、暗号化属性を確認するときは「cipher」コマンドを利用します。
たとえば「D:¥Test」フォルダー内のフォルダーやファイルの属性を確認したいときは、次のようにコマンドを実行します。
> attrib /s /d D:\Test\*
圧縮属性が付与されているかは「compact」コマンドで確認でき、圧縮属性が付与されているフォルダーやファイルには「C」マークが表示されます。
> compact D:\Test\*
暗号化属性が付与されているかは「cipher」コマンドで確認でき、暗号化属性が付与されているフォルダーやファイルには「E」マークが表示されます。
PowerShellで確認する
PowerShellで確認するときは「Get-ChildItem」コマンドレットを利用します。
たとえば「D:¥Test」フォルダー内のフォルダーやファイルの属性を確認したいときは、次のようにコマンドを実行します。
PS> Get-ChildItem D:\Test -Force
圧縮属性や暗号化属性が付与されているかも併せて確認したいときは、次のようにコマンドを実行します。
PS> Get-ChildItem D:\Test -Force | Select-Object FullName,Attributes
フォルダーやファイルに属性を設定する
フォルダーやファイルに属性を設定するときは、フォルダーやファイルのプロパティ画面で設定する方法と、コマンドで設定する方法があります。
プロパティ画面で設定する
フォルダーやファイルのプロパティ画面からは、次の属性を設定できます。
- 読み取り専用属性
- 隠しファイル属性
- アーカイブ属性
- 圧縮属性
- 暗号化属性
なお、圧縮属性と暗号化属性は排他的で、どちらか一方しか設定することはできません。
Windowsコマンドで設定する
Windowsコマンドで属性を設定するときは、基本的には「attrib」コマンドを利用し、属性を付与するときは「+」を、属性を解除するときは「-」を付けて実行します。
たとえば「D:¥Test\sample.txt」に「隠しファイル属性」を付与して「アーカイブ属性」を解除するときは、次のように実行します。
また、ワイルドカード「*」を利用すれば、複数のフォルダーやファイルに対して、一括設定することもできます。
> attrib +h -a D:¥Test\sample.txt
圧縮属性は、フォルダーやファイルをNTFS圧縮すると自動的に付与され、フォルダーやファイルをNTFS圧縮するときは「compact」コマンドを利用します。
> compact /C D:¥Test\sample.txt ←圧縮するとき
> compact /U D:¥Test\sample.txt ←圧縮を解除するとき
暗号化属性は、フォルダーやファイルを暗号化すると自動的に付与され、フォルダーやファイルを暗号化するときは「cipher」コマンドを利用します。
> cipher /E D:¥Test\sample.txt ←暗号化するとき
> cipher /D D:¥Test\sample.txt ←暗号化を解除するとき
PowerShellで設定する
PowerShellでフォルダーやファイルに属性を設定するときは「Set-ItemProperty」コマンドレットを利用します。
たとえば「D:¥Test\sample.txt」に「読み取り専用属性」と「隠しファイル属性」を付与するときは、次のように実行します。
PS> Set-ItemProperty D:¥Test\sample.txt -Name Attributes -Value "ReadOnly,Hidden"
「D:¥Test」フォルダー内のすべてのフォルダーやファイルに一括設定するときは、次のようにコマンドを実行します。
PS> Get-ChildItem D:\Test -Force -Recurse | Set-ItemProperty -Name Attributes -Value "ReadOnly,Hidden"
フォルダーやファイルに付与されている属性をすべて解除するときは、次のようにコマンドを実行します。
PS> Set-ItemProperty "D:¥Test\sample.txt" -Name Attributes -Value "Normal"
圧縮属性は、Windowsコマンドと同じ「compact」コマンドを利用します。(上記参照)
暗号化属性は、フォルダーやファイルを暗号化すると自動的に付与され、フォルダーやファイルを暗号化するときは「Encrypt」メソッドを利用します。
PS> (Get-Item D:\Test\sample.bat).Encrypt()
PS> (Get-Item D:\Test\sample.bat).Decrypt()
あとがき
ほとんどの属性は、Windowsにより自動的に付与されるため、Windows上での一般的な操作で属性を気にすることはあまりありませんが、読み取り専用属性や隠しファイル属性といった一部の属性は、使い方によってはフォルダーやファイルを保護したいときに役立つこともあるでしょう。
また、たくさんのフォルダーやファイルに対して属性の確認や設定を一括で行いたいときは、コマンドを使った操作が役立つでしょう。