如何使用脚本查看所有文件夹及子文件夹且仅输出目录名称
实现方法
方法1:GNU Linux 环境适用(大部分Linux发行版默认支持)
直接使用find自带的格式化参数即可:
find . -type d -printf "%f\n"
说明:%f是GNU find提供的格式占位符,作用是仅提取路径的最后一段名称,\n用于控制每条结果单独占一行,运行后即可输出你需要的纯目录名列表。
方法2:跨平台兼容方案(支持macOS、BSD等无GNU find的环境)
配合basename命令处理输出结果:
find . -type d -exec basename {} \;
说明:-exec参数会将find找到的每一条完整路径传入basename命令,后者会自动截取出路径末尾的目录名称。
补充说明
如果目录树中存在不同层级的同名目录,上述命令输出会出现重复值,如需去重可追加管道和uniq处理,示例:
find . -type d -printf "%f\n" | uniq
内容的提问来源于stack exchange,提问作者Anders Stene
相关产品推荐
相关产品推荐

