A little bit of everything

元・情報系大学院生の備忘録

Windowsでシステムファイル属性の削除方法

システムファイル属性とは

システムファイルとは、OSの動作に必要なファイル群。通常はシステムフォルダなど特定の場所に集められており、ユーザが直接操作しないようになっている。システムファイルに異常が起こるとOSが起動しなくなることがある。内容はOSによって様々だが、OS本体のプログラムのほかに、OSやアプリケーションソフトの設定情報や、装着されたハードウェアを動作させるためのドライバソフトウェア、ユーザごとの環境設定(プロファイル)、システムの設定を変更するためのユーティリティソフト、アプリケーションソフトが利用する拡張機能を収めたライブラリファイルなどが含まれている。

引用:システムファイルとは - IT用語辞典 e-Words

つまり大事なファイルということ。


Windowsでシステムファイル属性を消したくなった。

その理由は、なぜか普通の音楽ファイルや普通の動画ファイルにシステムファイル属性が付いて、いろいろ厄介だったから。

普通のファイルにシステム属性がついてると、次のような面倒なことがある。
(1) Windowsでは、システムファイル属性がついたファイルの名前を変更しようとしたり、移動や削除しようとしたりすると、警告が出る。

(2) コマンドプロンプトから、dir をやっても表示されない。
 => dir /a:s とやると、システムファイルだけを表示させられる。

(3) バッチとか書いても、普通のファイルとして処理されないことも。
(今回、ファイルを一気に rename するバッチを書いたんだけど、システムファイルだけ「指定されたファイルが見つかりません。」になってしまって面倒だった)

消し方

Windowsでは、GUIからシステムファイル属性を消すことができないため、コマンドでやる必要がある。

attrib ファイル名 -s とすればOK.

ちなみに、attrib コマンドは、 Windowsコマンド集:(attrib)