« フォルダの表示設定の保存場所はどこか? | トップページ | 関連付けでフォルダの詳細表示相当を保存印刷する。 »

2010年12月14日 (火)

バッチファイルでフォルダの詳細表示相当を保存印刷する。

バッチファイルにフォルダをドロップします。あるいはバッチファイルをSendToフォルダに入れておいて、フォルダを送ります。

PowerShellのdir結果をhtml tableに変換してhtaに表示します。

ps-dir-hta.cmd フォルダパス

powershell "dir '%~1'|convertto-html -title '%~1' -property Mode,Name,Length,LastWriteTime,Attributes|write-host"|start /b mshta.exe "about:<script defer>document.write(new ActiveXObject('scripting.filesystemobject').getstandardstream(0).readall());</script>"

PowerShellでFileSystemObjectのフォルダ情報をhtml tableに変換してhtaに表示します。

ps-fso-hta.cmd フォルダパス

powershell "$f=(new-object -com scripting.filesystemobject).getfolder('%~1');$f.subfolders+$f.files|convertto-html -title '%~1' -property Name,Size,DateLastModified,Type|write-host"|start /b mshta.exe "about:<script defer>document.write(new ActiveXObject('scripting.filesystemobject').getstandardstream(0).readall());</script>"

fsoだとフォルダサイズに全ファイルサイズが表示されます。

PowerShellでShell.Applicationのフォルダ情報をhtml tableに変換してhtaに表示します。

ps-shell-hta.cmd フォルダパス

powershell "(new-object -com shell.application).namespace('%~1').items()|convertto-html -title '%~1' -property Name,Size,ModifyDate,Type|write-host"|start /b mshta.exe "about:<script defer>document.write(new ActiveXObject('scripting.filesystemobject').getstandardstream(0).readall());</script>"

Shell.Applicationを使えば、エクスプローラと同じ情報が得られます。

htaの右クリックで「印刷」、「ソースの表示」で保存。

※ write-host は途中改行を防止します。

« フォルダの表示設定の保存場所はどこか? | トップページ | 関連付けでフォルダの詳細表示相当を保存印刷する。 »