閉じる

コマンドプロンプトで隠しファイルを表示・解除する方法:attribコマンドの使い方

Windowsを利用していると、エクスプローラーの設定を変更しても表示されない隠しファイルやフォルダに遭遇することがあります。

これはシステム保護のために属性が付与されていることが原因ですが、時には設定変更が必要な場面も生じます。

GUIからの操作では限界がある場合でも、Windows標準のコマンドプロンプトを利用すれば、強力かつ確実に属性を操作することが可能です。

本記事では、attribコマンドを駆使して隠しファイルを表示・解除する具体的な手法について、初心者の方にも分かりやすく解説します。

効率的なファイル管理を実現するためのテクニックとして、ぜひ参考にしてください。

attribコマンドとは?ファイル属性の基本知識

コマンドプロンプトに標準搭載されているattribは、ファイルやフォルダに付加された「属性」を表示・変更するためのコマンドです。

Windowsのファイルには、その役割や重要性に応じて、読み取り専用や隠し設定などの特別なマークが付けられています。

これらの属性を操作することで、誤削除を防いだり、逆に不要な隠し設定を解除したりすることができます。

attribコマンドで扱う主要な属性には、以下の4種類が存在します。

属性名略称(スイッチ)内容
読み取り専用 (Read-only)Rファイルの書き換えや削除を禁止します。
アーカイブ (Archive)Aバックアップや移動が必要なファイルとしてマークされます。
システム (System)SOSが使用する重要なファイルであることを示します。
隠しファイル (Hidden)H通常のエクスプローラー上では非表示になります。

隠しファイルを解除するためには、特に「H(隠しファイル)」と「S(システムファイル)」の両方の属性を意識することが重要です。

単なる隠しファイルであれば「H」のみですが、システムに関連するファイルの場合は「S」も付与されており、両方を解除しないと完全に表示されないケースがあります。

現在のファイル属性を確認する方法

属性を変更する前に、まずは対象のファイルやフォルダにどのような属性が付いているかを確認しましょう。

コマンドプロンプトを起動し、対象のファイルが存在するディレクトリへ移動してからattribと入力します。

Batch File
# カレントディレクトリ内のすべてのファイル属性を表示する
attrib

このコマンドを実行すると、ファイル名の左側にアルファベットが表示されます。

実行結果
A   H        C:\Sample\hidden_file.txt
A  SH        C:\Sample\system_hidden.sys
A            C:\Sample\normal_file.txt

例えば、上記の結果でHが表示されていれば「隠しファイル属性」が付いていることを意味します。

SHとなっている場合は、システム属性と隠し属性の両方が適用されている状態です。

隠しファイル設定を解除する基本操作

属性を解除するには、コマンドプロンプトで属性名の前にマイナス記号-を付けて実行します。

逆に属性を付与したい場合は、プラス記号+を使用します。

特定のファイルの隠し設定を解除する

最も基本的な使い方は、特定のファイル名を指定して隠し属性を外す方法です。

以下のコマンドは、sample.txtの隠しファイル属性(H)を解除します。

Batch File
# 隠し属性のみを解除する場合
attrib -h sample.txt

もし、システム属性も付いているために解除できない場合は、以下のように-sも併記します。

Batch File
# 隠し属性とシステム属性を同時に解除する場合
attrib -s -h sample.txt

このように、複数の属性を一度のコマンドで同時に操作することが可能です。

フォルダ内のすべてのファイルを一括で解除する

特定のフォルダ内にあるすべてのファイルに対して、一括で隠し設定を解除したい場合もあります。

その際は、ワイルドカードである*(アスタリスク)を使用しましょう。

Batch File
# フォルダ内の全ファイルの隠し属性を解除する
attrib -s -h *.*

このコマンドを実行することで、個別に指定する手間を省き、一括で可視化状態に戻すことができます。

サブディレクトリを含めた再帰的な解除方法

特定のフォルダだけでなく、その中にある子フォルダや孫フォルダ(サブディレクトリ)まで含めて一括処理したい場合は、オプションスイッチを利用します。

ここで使用するのは、/s/dという2つのオプションです。

  • /s:現在のディレクトリとすべてのサブディレクトリ内のファイルを処理する。
  • /d:ディレクトリ(フォルダ)そのものも処理の対象に含める。

例えば、USBメモリなどのルートディレクトリで以下のコマンドを実行すると、ドライブ内の全ファイルを強制的に表示させることができます。

Batch File
# サブディレクトリ配下を含むすべてのファイルとフォルダの属性を解除
attrib -s -h /s /d

この操作は、ウイルス感染などでファイルが隠されてしまった際の復旧手段として非常に有効です。

ただし、Windowsのシステムドライブ(Cドライブなど)のルートで不用意に実行すると、重要なシステムファイルまで表示されてしまうため注意してください。

よくあるトラブル:アクセス拒否や解除できない原因

attribコマンドを実行した際に、「アクセスが拒否されました」というエラーが表示されることがあります。

この原因の多くは、実行権限が不足していることにあります。

隠しファイルやシステムファイルを操作する場合、コマンドプロンプトを「管理者として実行」している必要があります。

スタートメニューから「cmd」と検索し、右クリックして「管理者として実行」を選択してから、再度コマンドを試してみてください。

また、ファイルが別のプログラムによって開かれている場合も、属性変更が制限されることがあります。

その場合は、関連するアプリケーションをすべて閉じてから操作を行いましょう。

さらに、書き込み禁止スイッチがついている外付けストレージなどの場合、物理的なロックを確認する必要もあります。

attribコマンドを活用する実践的なシーン

このコマンドは、日常的なファイル操作以外にも、トラブルシューティングで威力を発揮します。

例えば、古いアプリケーションが自動生成した隠しフォルダを削除したいとき、まず属性を解除しなければ削除コマンドが通らないことがあります。

また、一部のマルウェアはファイルを隠すだけでなく「システム属性」を付与することで、エクスプローラーの「隠しファイルを表示する」設定をすり抜けようとします。

そのような場合、attrib -s -hコマンドこそが、データを救出するための唯一の手段になることもあります。

日常的に使うものではありませんが、いざという時のために「属性をマイナスで消せる」という仕組みを覚えておくと非常に役立ちます。

まとめ

コマンドプロンプトのattribコマンドは、Windowsにおけるファイル管理をより深く制御するための強力なツールです。

「H」属性で隠し設定を、「S」属性でシステム設定を制御し、それらをマイナス記号で解除できるという基本ルールを押さえておきましょう。

エクスプローラーでは対応しきれない複雑なフォルダ階層でも、/s/dオプションを組み合わせることで一括処理が可能になります。

ただし、システム属性を不用意に変更することは、OSの安定性を損なうリスクも伴います。

操作対象のファイルが何であるかを必ず確認し、慎重に実行することを心がけてください。

正しく使いこなすことができれば、ファイルトラブルの解決スピードは格段に向上するはずです。

URLをコピーしました!