rmtrash 是 macOS 上的命令行工具,用于将文件安全地移动到废纸篓,作为 rm 命令的替代方案。目前市面上的两款类似工具,Objective-C 版本的 trash 和 Swift 版本的 macos-trash,分别已有 6 年和 2 年未更新,且存在一些问题:trash 没有使用最新的废纸篓 API,而 macos-trash 实现过于简陋,缺乏对 rm 命令标志位的全面支持。rmtrash 解决了这些问题,提供了更为稳定和兼容的替代方案。
rmtrash https://github.com/TBXark/rmtrash 提供了与 Linux 和 macOS 版本 rm
命令完全兼容的标志位支持。
使用
rmtrash [-f | --force] {[-i | --interactive[=always]] | [-I | --interactive=once] |
[--interactive=never]} [--one-file-system | -x] [--no-preserve-root |
--preserve-root] [-r | -R | --recursive] [-d | --dir] [-v | --verbose]
FILE...
rmtrash --help
rmtrash --version
安装
brew install tbxark/repo/rmtrash
如果你不想订阅我的 taps, 可以在 release 中下载二进制,或者直接从源码编译
其他
一开始交给号称能自己写完整个项目的 Windsurf 写,结果写出来了一团浆糊。最后还是得人来组织代码结构, AI 辅助提示。
另外自己和 AI 已经找不到什么 BUG 了,欢迎测试提交 issue
rmtrash 的使用
rmtrash [OPTION]... [FILE...]
rmtrash
支持 GNUrm
所做的一切,这意味着它接受以下选项(参见--help
):
- 帮助选项:
--help
:显示帮助并退出--version
:输出版本信息并退出
- 应用选项:
-f
,--force
:忽略不存在的文件,从不提示-i
: 每次删除前提示-I
: 在删除三个以上文件之前或递归删除时提示一次。比 干扰更少-i
,同时仍能防止大多数错误--interactive[=WHEN]
:根据 WHEN:never
、once
(-I
)或always
(-i
)进行提示。如果没有 WHEN,则始终进行提示--one-file-system
:递归删除层次结构时,跳过与相应命令行参数不同的文件系统上的任何目录--no-preserve-root
:不做/
特殊对待--preserve-root
:不删除/
(默认)-d
,--dir
:删除空目录-r
,,-R
:--recursive
递归删除目录及其内容-v
,--verbose
:解释正在做什么
rmdirtrash 的使用
rmdirtrash [OPTION]... [DIRECTORY...]
rmdirtrash
支持 GNUrmdir
所做的一切,这意味着它接受以下选项(参见--help
):
- 帮助选项:
--help
:显示帮助并退出--version
:输出版本信息并退出
- 应用选项:
--ignore-fail-on-non-empty
:忽略仅因为目录非空而导致的每个失败-p
,--parents
:删除 DIRECTORY 及其祖先;例如,rmdirtrash -p a/b/c
类似于rmdirtrash a/b/c a/b a
-v
,--verbose
:输出每个处理目录的诊断信息
替换选项
rmtrash
调用resp.时不应使用此选项rmdirtrash
。它可以帮助您控制如何以及在何种情况下替换rm
resp .。如果没有,则不会进行特殊处理。rmdir
--forbid-root
root
--forbid-root[=HOW]
:禁止用户root
丢弃文件。当标准输入是终端时,ask-forbid
和ask-pass
将询问用户是否将命令传递给/bin/rm
。当标准输入不是终端时,ask-forbid
将中止命令,而ask-pass
将命令传递给/bin/rm
。使用pass
将用户的所有命令传递root
给/bin/rm
而不进行询问。如果用户root
永远不想丢弃文件,请使用always
。相反,不以任何特殊方式never
处理。没有,则假定root
HOW
ask-forbid
原创文章,作者:北单,如若转载,请注明出处:https://www.beidanyezhu.com/a/61.html