有没有一个好的方法来结合:
ls -R | grep "^[.]/" | sed -e "s/:$//" -e "s/[^\/]*\//--/g" -e "s/^/ |/"
(将目录显示为树)
和
du -h ... (for each listed dir)
无需安装任何额外的软件包,如 tree、dutree ?
答案1
du -h
我认为,您应该恢复with的顺序tac
,然后使用 进行一些格式化sed
。这应该适用于“正常”目录名称(没有控制字符):
du -h | tac | sed 's_[^/[:cntrl:]]*/_--_g;s/-/|/'
或者使用find -exec
:
find . -type d -exec du -sm {} \; | sed 's_[^/[:cntrl:]]*/_--_g;s/-/|/'