• 締切済み

「内容を圧縮してディスク領域を節約する」検索方法2

(どうも不可能らしいですが念のため再質問しました) 「内容を圧縮してディスク領域を節約する」がONになったファイルを検索してリストアップすることが可能なら方法を教えて下さい。 --- ファイルやフォルダのプロパティ → 全般タブ → 詳細設定 → 圧縮属性または暗号化属性 → 「内容を圧縮してディスク領域を節約する」

  • pf_
  • お礼率98% (153/156)

みんなの回答

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.5

No4の補足です。 ListView to CSVでの出力形式をタブ区切りにしてやれば、エクセルで普通に項目ごとに別の列で読み込まれますので、No4で書いたエクセルでの区切り位置の設定をしなくてすみます。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.4

> dirやattribコマンドはC属性には対応しておらず、コマンドラインでは無理ではないでしょうか? はい、No3でも書きましたが無理でした。 で、いいソフトを見つけたのでこれを利用してください。 ListView to CSV http://www.inasoft.org/webhelp/lv2csv/HLP000001.html ダウンロードはこちらから http://www.inasoft.org/lv2csv.html#download ファイル一覧をクリックしたときの画面 http://www.inasoft.org/webhelp/lv2csv/HLP000013.html これで出力したファイルをエクセルで読み込むとA列に全て読み込まれるので、データの区切り位置の設定でカンマやタブ云々を選択→次へ→区切り文字のその他をチェックしてボックスに " を指定、カンマもチェックすると、ファイル名や属性などがそれぞれの列に分かれます。 それでデータの一番上に一行目を挿入してそれぞれの列に適当な文字を入力し、オートフィルタを設定します。属性の列のフィルタのオプション設定でCを含む条件でフィルタを掛けるとC属性のファイル一覧が出来上がります。 試してみてください。

pf_
質問者

お礼

大変にありがとうございます。 早速試してみます。 感謝いたします。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

No1です。補足です。 > DOSコマンドのDIRのオプションだと /A-ですが/A-A オプションだと AC属性のものもはねられてしまって一覧取得できませんでした A属性を含む属性以外という考え方だったんですね。私はA属性のもののみはねるものと思ってました。ということで、これは使えそうにありません。 > エクセルのVBAですが とりあえず以下のVBAでエクセルのシートにC属性のファイルを書き出せる感じですが、このVBAを含むエクセルファイルが保存されているフォルダを含み、それ以下のフォルダの全てのファイルの属性を調べるので、ファイル数が多いと正直とても時間がかかります。実行させるのはSub Test()です。 ただし、エクセル2003だと行が65536行までしかないためにC属性のファイルが65536個を超えるとエラーになります。そんなにC属性のファイルはないと思いますので、そのあたりの処理は割愛してます。また、先の回答にも書きましたが、C属性はVBAの仕様に含まれていないみたいなので、私の簡単なテストでは取得できましたが、実際のファイル群できちんともれなく取得できるかどうかは不明です。 下記のコードで1個も取得できなかった場合 MyFileName = Dir(MyPath & "\*.*", vbHidden) のところを MyFileName = Dir(MyPath & "\*.*") にしてみてください。その場合、隠しファイルは検索外になってしまいます。 Sub Test() Dim MyRow As Long MyRow = 0 Range("A:A").ClearContents Call Sample(ThisWorkbook.Path, MyRow) End Sub Sub Sample(ByVal MyPath As String, ByRef MyRow As Long) Dim MyFileName As String, c As Object Dim MyAttr As Integer MyFileName = Dir(MyPath & "\*.*", vbHidden) Do While MyFileName <> "" MyAttr = GetAttr(MyPath & "\" & MyFileName) If (MyAttr And 10240) <> 0 And MyAttr >= 10240 Or (MyAttr >= 2000 And MyAttr <= 2200) Then MyRow = MyRow + 1 Cells(MyRow, 1) = MyPath & "\" & MyFileName End If MyFileName = Dir() Loop With CreateObject("Scripting.FileSystemObject") For Each c In .GetFolder(MyPath).SubFolders Call Sample(c.MyPath, MyRow) Next c End With End Sub

回答No.2

#1さんにの最後のやつに賛成 検索フィルターに掛からないならcmdでリスト化してテキストエディタで検索かけるのが無難。 ファイル名:\> Dir>list.txt http://www.atmarkit.co.jp/ait/articles/0412/04/news014.html ただ階層ごとに作るのが面倒ではあるけれど、圧縮する位なら更新頻度は少ないんですよね? 多いならHDD買い換えて検索フィルター使うのが一番早い。

pf_
質問者

お礼

お礼が遅れてすみません。 DirやAttribコマンドはC属性には対応していないのではないでしょうか?

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

「内容を圧縮してディスク領域を節約する」にすると、ウィンドウズエキスプローラーで詳細表示で属性を表示させてみるとCがつきますね。 DOSコマンドのDIRのオプションだと 属性 D ディレクトリ R 読み取り専用 H 隠しファイル A アーカイブ S システム ファイル - その属性以外 ですので、 /A- で一覧をとるとなにかとれそうな感じもしますが、「内容を圧縮してディスク領域を節約する」 一覧になるかどうかは不明ですね…。 エクセルのVBAですが GetAttr関数で調べるとアーカイブと併用されている場合、2080が返ってきますので、それでリストアップできそうな感じでもあります。単独の場合10240が返ってきます。 ただ、GetAttr関数の本来の戻り値はヘルプによると vbNormal 0 通常ファイル vbReadOnly 1 読み取り専用ファイル vbHidden 2 隠しファイル vbSystem 4 システム ファイル。Macintosh では使用できません。 vbDirectory 16 フォルダ vbArchive 32 アーカイブ (属性最後にバックアップした後で、変更されたファイル)。Macintosh では使用できません。 ですので、10240や2080が正常な戻り値かどうかは不明なので、使えるかどうかはテストしてみないと分からない部分です。 あと、一時フォルダを作成してC属性のついたファイルだけコピーしてDOSコマンドで一時フォルダに対して DIR > C.TXT とかしたら一覧は取れますね。

pf_
質問者

お礼

お礼が遅くなってすみません。 エクスプローラーの詳細表示でC属性が表示されることは初めて知りました。 ありがとうございます。 VBAは私にはちょっと難しすぎて使えないです。 すみません。 dirやattribコマンドはC属性には対応しておらず、コマンドラインでは無理ではないでしょうか? --- エクスプローラーでCドライブ全体を*で検索して十数万個のファイルを詳細表示した状態で、属性を表示させてソートしてみました。 C属性が付いたものだけを抽出とかできれば良かったのですが、ソートさせても他の属性との組み合わせであちこちに分散されて表示されてしまいます。

関連するQ&A

  • 「内容を圧縮してディスク領域を節約する」検索方法?

    Windows XP 「内容を圧縮してディスク領域を節約する」属性がONになったファイルを検索してリストアップする方法はありますか? ありましたら教えて下さい。

  • 内容を圧縮してディスク領域を節約する

    ファイルのプロパティで、  ・フォルダをアーカイブ可能にする (・検索を速くするために、.... )  ・内容を圧縮してディスク領域を節約する とありますが、一番上はチェックされていなければファイル形式を変えられないという事でしょうか? (mp3をZIP形式に?) 3番目はファイル形式を変える圧縮とは、どうちがうのでしょうか? 名前の表示が青く変わりますが、容量は変わっていない気がするのですが..。 ちなみにそれをすると、ウィルスの発見やデータの移動時などには何か問題はあるでしょうか?

  • ”内容を圧縮してディスク領域を節約する”はZIP形式でしょうか?

    ファイルを右クリックしたら ”内容を圧縮してディスク領域を節約する”の項目がありました。でもこの圧縮形式は何なのでしょうか?名無し?それともWindows 標準の ZIP 形式でしょうか?

  • ”内容を圧縮してディスク領域を節約する”を解除したい!

    昔、マイコンピュータのprogramファイルなど知識がないまま”内容を圧縮してディスク領域を節約する”にチェックしていましたが、現在ではファイル展開など遅くなる原因なのでチェックを外しました。 しかし、USBやメモリーカードからデスクトップにファイルをコピーすると圧縮された状態になっています。これを解除するにはどうすればよいでしょうか?

  • これでもファイル名は青くなるの?

    ファイル名が青く表示されます。 属性の詳細で「内容を圧縮してディスク領域を節約する」にチェックがちゅいてるためだと知りました。 1.ディスククリーンアップで「古いファイルを圧縮する」をチェックしてディスククリーンアップをすると、ファイル名が青くなったんですが、属性の詳細で「内容を圧縮してディスク領域を節約する」と同じ働きをしたので青くなったんですか? 2.デフラグで、デフラグ中に「ファイルを圧縮中」と表示されますが、デフラグ後ファイル名が青くなっているところはありませんでした。これは1や属性の詳細での圧縮とは違うのですか? 3.マイコンピュータ→ローカルディスクのプロパティ→ドライブを圧縮してディスク領域を空けるにチェックをしたら、ファイル名が全部青くなったんですが、これは1の圧縮と同じなんですか?チェックを外すと黒くもとに戻りました。 詳しく教えてください。

  • 「このドライブを圧縮してディスク領域を開ける」とは

    Windows10のノートパソコンのCドライブの空き容量が少なくなったので、Cドライブのプロパティの「全般」の下側にある「このドライブを圧縮してディスク領域を開ける(C)」にチェックを入れて「OK」して、いったん動き出したのですが、10-20秒くらいして、リスクが気になって怖くなったので「キャンセル」しました。 「このドライブを圧縮してディスク領域を開ける(C)」を行うことのリスクには、どのようなものがあるでしょうか?

  • ディスク クリーンアップの古いファイルの圧縮

    XP-SP2です。IE6.0 OE6です 以前から月に一度ディスク クリーンアップしますが 最近、古いファイルの圧縮が、毎回390000KBくらい検出されます。 オプションで、圧縮は 60日間アクセスされてない場合に設定しています。 しかし、クリーンアップして0KBにして、翌日再度行うと又200000KBくらい 検出されます。その間特別なファイル処理をした訳でもなく、メールチェックと インターネットをした程度です。 以前は、60日に設定しているので、たまに50000KBくらい有った程度でした。 120GBのHDDでパーテェーションはCドライブ 80GB Dドライブ 40GBです。 Cはデフォルトで DはオーディオとFLVファイルだけです。 しかし、そのDをディスク クリーンアップしても150000KBくらい検出されます。 参考 フォルダのプロパティ/全般/属性/詳細設定では ※ファイルをアーカイブ可能にする ※検索を速くするためこのフォルダにインデックスをつける にチェックが入っています。 ※内容を圧縮してディスク領域を節約する にはチェックは入っていません。 質問 なにかの設定が狂ってこんな状態になったのでしょうか? 原因と対処法が有れば教えて下さい。

  • 名前が「青文字」のファイルのことで

    フォルダを開いた時に、 名前が「青文字」で表示されるファイルがありますが、 プロパティを調べてみましたら、 「内容を圧縮してディスク領域を節約する」 というところにチェックが付いているのに気付きました。 ---- 1. 「青文字で表示されるのは、そういうファイル属性を表すため」 というような理解でいいでしょうか? 2. ファイル内容を圧縮するのは、たとえば、 「普段はほとんど使われないファイルなので、」というようなことでしょうか? 3. 圧縮によるディスク領域の節約効果というのは、どの程度のものなんでしょうか? --

  • ”ドライブを圧縮してディスク領域を空ける”はチェックを入れた方が良い?

    ローカルディスクのプロパティで、”ドライブを圧縮してディスク領域を空ける”がありますが、ディスク領域が広くなる以外のメリット、デメリットを教えて下さい。

  • ディスクの圧縮について

    WinXPです。 NTFSフォーマットのディスクのプロパティをみると「ドライブを圧縮しでディスク領域を空ける」という項目があります。 これをやりたいのですが、「J:\にのみ圧縮変更を適用」と「J:\のファイルとサブフォルダにも変更を適用」と選択しなければなりません。 普通どちらと選べばよいのでしょうか? 両者の違いを教えてください