#filesystem #command-line-tool #size #directory #permissions #directory-recursively #symlink

app ag_file_system_scanner

一款小巧的命令行工具,用于扫描和搜索文件系统,获取目录大小。

3 个版本

0.1.3 2022 年 12 月 15 日
0.1.2 2022 年 12 月 11 日
0.1.1 2022 年 12 月 2 日
0.1.0 2022 年 12 月 1 日

#2622 in 命令行工具

每月 21 次下载

自定义许可证

68KB
1K SLoC

ag_file_system_scanner

GitHub issues GitHub forks GitHub stars GitHub license

这是一个使用 Rust 编写的性能高、小巧的命令行工具,用于在文件系统中导航。它可以用于 -

  • 通过全名/部分名查找目录、符号链接和文件。
  • 递归地查找目录的大小。
  • 查找文件系统的条目权限(仅支持 POSIX 风格的权限)。
  • 通过命令行进行通用导航和文件系统探索。

它是 AgFileSystemScanner 的继承者,后者是用 C++ 编写的相同工具。由于 Rust 的详细、编译时错误处理,选择了 Rust 而不是 C++。Rust 中不存在异常,这减少了崩溃发生的可能性。

用法

fss [PATH] [options] [-r [DEPTH]] [-S|--search|--search-noext|--contains PATTERN]

选项

-r, --recursive             Recursively scan directories (can be followed by a positive integer to indicate the depth)
-p, --permissions           Show permissions of all entries
-t, --modification-time     Show time of last modification of entries

-f, --files                 Show Regular Files (normally hidden)
-l, --symlinks              Show Symlinks (normally hidden)
-s, --special               Show Special Files such as sockets, pipes, etc. (normally hidden)

-d, --dir-size              Recursively calculate and display the size of each directory

-a, --abs                   Show the absolute path of each entry without any indentation

-S, --search                Only show entries whose name completely matches the following string completely
    --search-noext          Only show entries whose name(except for the extension) completely matches the following string completely
    --contains              Only show entries whose name contains the following string completely

-e, --show-err              Show errors
-h, --help                  Print Usage Instructions

PATH 是开始扫描的目录路径。

一次只能设置一个搜索选项(-S--search--search-noext--contains)。

搜索标志后面的参数被视为搜索模式。

示例

打印当前目录中的目录,递归向下两层 -

fss -r 2

打印 /proc 的内容,包括文件、符号链接和具有权限的特殊文件 -

fss "/proc" -f -l -s -p

递归搜索 C:// 中所有名为 proc 的目录,并显示它们的大小、最后修改时间 -

fss "C:/" -r -d -t -S "proc"

依赖关系

~1MB
~18K SLoC