kuniku’s diary

はてなダイアリーから移行(旧 d.hatena.ne.jp/kuniku/)、表示がおかしな箇所はコメントをお願いします。記載されている内容は日付およびバージョンに注意してください。直近1年以上前は古い情報の可能性が高くなります。

Windows Caclsコマンドの使い所

容量がもったいない

CドライブのディスクをHDD→SSDに変更し、旧CのHDDをDドライブとして
使う場合に、Dのwindowsディレクトリをリネームして使ったりする。
そんな時、
old_win8.1pro
というディレクトリができて(作ったのは自分だったりするが)、消したいのに消せない(20GB近くもったいない)。

消す方法

  • ファイルやディレクトリにSYSTEMユーザなどの権限しかない時は、手動で権限を付与してから消せば良いけど、calcsコマンドという便利なコマンドがある。

Linuxなどの 「chown -R 」コマンドに相当。)

  • やったこと
  • Administratorsに所属するグループのアカウントで作業する
  • ディレクトリを選択し、プロパティを表示し、

 「セキュリティ」タブにて
   「詳細設定」
     XXXXのセキュリティ詳細設定にて
      所有者を、「変更」して、自分のアカウントにする
        ユーザ名を入力して、【名前の確認】で選択して、「OK」

該当PCのusersグループに権限を付与してしまう。
usersならば、PC使うユーザ誰でもなので、自分のアカウントも含まれる。


$ D
$ cd D:\old_win8.1pro\Windows
$ D:\old_win8.1pro\Windows>cacls *.* /T /E /G users:F

参考)http://www.k-tanaka.net/cmd/cacls.php

のように、指定したディレクトリ配下の権限を再帰的に追加する。

なお、

  • /C でアクセス拒否でも続行するようにしても良い。
  • /E を付けずに、置き換えでなく、実行した内容で上書き(既存のセキュリティ情報は削除)しても良い。
  • コマンドプロンプトを、「管理者で実行」することで、アクセス拒否にならないようにできるかもしれない。
  • アクセス拒否されたら、手動で「セキュリティ」で users を権限追加することで回避するか、UACの警告ダイアログが表示された後に、そのままDELETEできることもある。
  • 権限が付与できたら、削除していく(Shift+Delがゴミ箱に入れないで、いきなり削除)