打印文件和目录结构,以及其文件内容的命令行工具ls2【ls、tree、find、fd、exa、bat、Linux/Windows/MacOS】

前言

大家最常用的命令行工具,应该是 lstreefindfdexabat……
我也常在用,但各有缺陷,功能不全。
我想要一个命令行工具,可以 打印文件和目录结构,以及其文件内容,并且有可选项,和忽略文件夹,搜遍全网,都没有满足我要求的。按我的习惯,全网没有,那我就自己写一个!!!
在这里插入图片描述

命令行小工具:ls2

简单使用 先直接上效果图:
在这里插入图片描述

ls2用法

在这里插入图片描述

可选项:只打印文件目录结构,不打印内容

在这里插入图片描述

可选项:只打印目录结构,不打印文件名、内容

在这里插入图片描述

可选项:忽略特定路径下的目录

在这里插入图片描述
在这里插入图片描述

可选项:忽略所有的某目录

在这里插入图片描述

可选项:组合示例

在这里插入图片描述
在这里插入图片描述

建议

ls2 加入环境变量
然后可以任意路径下使用


下载

ls2下载地址(含 Windows、Linux、MacOS 三个版本)
https://download.youkuaiyun.com/download/maoyeahcom/91092969


==============================================================

ls2 程序与现有 Linux/Windows 命令工具对比

ls2 程序功能是:

  • 打印目录树结构(可选:仅显示目录,目录+文件,目录+文件+内容)
  • 支持忽略某些目录(支持通配,比如 */.git
  • 可递归显示文件内容

在 Linux/Windows 上类似的命令工具

1. tree(Linux/Windows均有)

  • 功能:打印目录树结构,可按层级显示目录和文件。
  • 是否支持忽略目录:支持(-I 选项,简单通配符)。
  • 是否显示内容不支持
  • 是否支持仅目录:支持(-d 选项)。
  • 通配符灵活性:不及 ls2 程序灵活(只支持简单 *,不支持递归通配如 */.git)。

示例:

tree -I '.git|node_modules'           # 忽略.git和node_modules目录(只支持当前层级)
tree -d                               # 只显示目录

2. find(Linux/Windows均有)

  • 功能:递归列出文件和目录,可灵活过滤。
  • 是否支持忽略目录:支持,需配合 -prune 使用。
  • 是否显示内容不支持直接显示内容。
  • 是否支持仅目录:支持(-type d)。
  • 通配符灵活性:可组合实现,但写法繁琐。

示例:

find . -type d                        # 只显示目录
find . -type f                        # 只显示文件
find . -name '.git' -prune -o -print  # 忽略所有.git目录

3. ls(Linux/Windows的PowerShell有类似Get-ChildItem

  • 功能:列出目录内容。
  • 是否递归ls -R
  • 是否忽略目录/显示内容不支持灵活过滤和内容显示。

4. fd, exa, bat等现代工具(Linux)

  • fd:快速查找文件/目录,支持忽略模式(.gitignore语法),但不显示内容。
  • exa:美化版ls,支持树状显示(exa --tree),部分过滤。
  • bat:类似cat,带高亮,不能递归显示所有内容。

ls2独特之处

  • 支持递归显示所有文件内容
  • 忽略目录支持相对路径和递归通配(*/.git),比tree -I更灵活
  • 结合目录树与内容一体,市面主流命令行工具基本没有完全一样的

总结

  • 没有与 ls2 完全等价的现成工具
  • tree + cat + find组合可部分实现,但不如ls2方便和灵活。
  • 如果你只想看目录树,用tree
  • 如果你想灵活过滤目录,结合findtree
  • 如果你要递归看内容,只有写脚本或用ls2。

结论:
ls2程序是对现有命令行工具的有力补充,独特之处是灵活的目录过滤和递归内容打印,常见系统工具(Linux/Windows)没有完全同样功能的现成命令


下载

ls2下载地址(含 Windows、Linux、MacOS 三个版本)
https://download.youkuaiyun.com/download/maoyeahcom/91092969


评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值