忍者ブログ

Windowsのtreeコマンドで3階層目までだけを表示する簡単な方法

2022年07月29日
連載してきたtreeコマンドについて今回でラスト。

目次
Windowsのtreeコマンドで3階層目までだけを表示する方法
3階層目までだけを表示するtreeコマンドを生成するVBScript
3階層目までだけを表示する自作コマンドtree3.batを作ってみた
Windowsのtreeコマンドで3階層目までだけを表示する簡単な方法(今回)



treeコマンドの結果に対して、findstrの正規表現を使って、
1~3階層に該当する文字列を取得してきた。

そう。正規表現。

今まで、コマンドを横に並べて書いていたせいで気づかなかった。
もっと簡単な正規表現があるじゃんか!


全角文字の任意の1文字は..で表現するらしい。
これを踏まえて、1階層から3階層の出力結果の正規表現は以下の通り。

1階層目
/C:"^..─"

2階層目
/C:"^.. ..─"

3階層目
/C:"^.. .. ..─"

コマンド
tree [パス]| findstr /R /C:"^..─" /C:"^.. ..─" /C:"^.. .. ..─"

結局辞書登録できるじゃん・・・。


厳密さは少し劣るけど、フォルダ名に─(けいせん)は使わないでしょ。


4層目はパターン多すぎてやる気にならないけど、
以下コマンドで取れそうね。

tree [パス]| findstr /R /C:"^..─" /C:"^.. ..─" /C:"^.. .. ..─" /C:"^.. .. .. ..─"



※2023/3/27追記 HTMLでは、連続スペースを無視するため表現できずコマンドが間違っていました。
検索対象の絶対パスを[フォルダパス]として コマンドファイルのとおり。

PR
Comment
  Vodafone絵文字 i-mode絵文字 Ezweb絵文字