4 个版本 (2 个破坏性更改)
0.3.1 | 2024年5月19日 |
---|---|
0.3.0 | 2024年5月16日 |
0.2.0 | 2024年5月14日 |
0.1.0 | 2024年5月13日 |
#593 in 文件系统
24KB
353 行
概述
[ Detecteff ] (DetectF 或 Detective) 是一个命令行工具,用于在目录中查找重复文件。
徽章
目录
功能
- 可选递归扫描
- 默认输出格式或更好的可读性输出格式
- 彻底
- 自 v0.3.0 版本后超级快
- 能够忽略目录或子目录。
- 自动忽略名称以点(.)开头的目录,因为它们不应该被修改。
注意: 如果正在扫描操作系统中的 HOME
目录,请小心,因为一些目录(例如 macOS 中的 Library
和 Applications
文件夹)不应该被修改。请尝试扫描主目录中的单个目录。
例如
假设这是您的 HOME
目录的目录结构。
~/--- |
abc.txt
dir1/--- |
xyz.txt
123.txt
dir2/--- |
456.txt
hehe.txt
hello.txt
...
不要直接扫描 HOME
目录。尝试扫描单个目录。
或者,如果您确实需要这样做,请尝试使用 --ignore
标志来指定要忽略的目录(不区分大小写)。
附加说明
- 避免扫描操作系统目录或任何应用程序安装目录,否则可能会修改重要文件。
- 在使用
--delete
或-d
标志删除临时文件之前,请检查扫描后打印的将删除的文件列表(白色背景,红色前景)。
安装
在终端运行
$ cargo install detecteff
Installing detecteff v0.3.1
Updating crates.io index
Compiling libc v0.2.155
Compiling option-ext v0.2.0
Compiling colorized v1.0.0
Compiling dirs-sys v0.4.1
Compiling dirs v5.0.1
Compiling rustypath v0.1.1
Compiling argrust v0.1.0
Compiling detecteff v0.3.1 (/Users/XXXXXX/detecteff)
Finished `release` profile [optimized] target(s) in 2.02s
帮助
要获取帮助,请在终端运行
$ detectf --help
detecteff help
-
[INFO]
| -h, --help : show help text and exit.
| -v, --version : show version and exit.
-
[FLAG]
| -r, --recursive : recursive mode. Default -> OFF
| -f, --format : show formatted output. Default -> OFF
-
[INPUT]
| -s, --scan <directory> : scan the directory for duplicate files. (Mandatory)
| -i, --ignore <directory1>, <directory2>, ... : ignore these directories. (Optional)
-
[IRREVERSIBLE FLAG]
| -d, --delete : delete any found duplicates. Default -> OFF
修复 Windows 终端以支持 ANSI 颜色
默认情况下,Windows 终端不支持 ANSI 颜色代码,这些代码在 v0.3.1
中实现。您可以通过以下方式修复此问题:
运行以下命令从 detecteff
仓库下载 fix-terminal.bat
文件。
使用 curl
curl -o fix-terminal.bat https://raw.githubusercontent.com/d33pster/detecteff/main/fix-terminal.bat
使用 wget
wget -O fix-terminal.bat https://raw.githubusercontent.com/d33pster/detecteff/main/fix-terminal.bat
手动
转到 https://github.com/d33pster/detecteff
并单击 fix-terminal.bat
文件,然后单击下载按钮。
双击 fix-terminal.bat
以检查和修复 CMD 中的 ANSI 颜色支持。
用法
Deteceff
可以用来扫描由用户、程序留下的重复文件,或者因为你找不到文件的第一份副本而再次下载了一些文件。无论是什么原因,Detecteff
都是解决方案。
注意: 这里使用了较长的参数,但你可以自由地使用简短版本或长、短参数的组合。要在自己的项目中实现此参数解析,请查阅 argrust
在目录中搜索重复文件
detectf --scan <directory>
在目录树中搜索重复文件(递归)
detectf --scan <directory> --recursive
以格式化的方式显示输出
detectf --scan <directory> --recursive --format
删除找到的重复文件。(自
v0.3.1
起需要再次扫描。将在v0.3.2
中修复。)
detectf --scan <directory> --delete
获取帮助
detectf --help
获取版本
detectf --version
依赖项
~0.1–10MB
~48K SLoC