Skip to content

Instantly share code, notes, and snippets.

@butackle
Created August 22, 2024 11:43
Show Gist options
  • Save butackle/89ace21bc3aedc4d7b4b220763a0c6e8 to your computer and use it in GitHub Desktop.
Save butackle/89ace21bc3aedc4d7b4b220763a0c6e8 to your computer and use it in GitHub Desktop.
まだ存在しないディレクトリ達のディレクトリツリーをtreeコマンドで書く

まだ存在しないディレクトリ構造のディレクトリツリーをtreeコマンドでは書けない

みたいなことをネット上で見て、本当かどうか試してみた。


環境はMacで、treeコマンドのバージョン情報は下記です。 

tree v2.1.1 © 1996 - 2023 by Steve Baker, Thomas Moore, Francesc Rocher, Florian Sesser, Kyosuke Tokoro

使ったファイルは下記に添付してます。


man treeをナナメ読みしてみたら、INPUT OPTIONSが使えそうに感じたので、まず --fromtabfile を試してみる。

tree --fromtabfile tab_dir_tree.txt と入力したら以下の出力が得られた。

tab_dir_tree.txt
├── aaa
│   └── aaaa
│       └── aaaaa
├── bbb
└── ccc

3 directories, 3 files

出来心でcat tab_dir_tree.txt | tree --fromtabfile もやってみたら、それでも一応出来た

.
├── aaa
│   └── aaaa
│       └── aaaaa
├── bbb
└── ccc

3 directories, 3 files

--fromfileオプションを試してみる。 

なんか最初manを読んだ感じはよく分からんかったけど、要は普通に書けばよいみたいだったので、tree --fromfile dir_tree.txt と入力してみたら以下の出力が得られた。

dir_tree.txt
├── aaa
│   └── aaaa
│       └── aaaaa
├── bbb
└── ccc

3 directories, 3 files

cat dir_tree.txt | tree --fromfile でも、やはり出来た。

.
├── aaa
│   └── aaaa
│       └── aaaaa
├── bbb
└── ccc

3 directories, 3 files

結論:まだ存在しないディレクトリ構造のディレクトリツリーをtreeコマンドでも書けそう。

aaa
aaa/aaaa
aaa/aaaa/aaaaa
bbb
ccc
aaa
aaaa
aaaaa
bbb
ccc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment