首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >` `rm -f`请求确认,当别名为` `rm -i`时

` `rm -f`请求确认,当别名为` `rm -i`时
EN

Stack Overflow用户
提问于 2016-08-02 11:44:22
回答 2查看 1.3K关注 0票数 2

我使用这个命令尝试删除一个非常大的文件夹中的所有Thumbs.db文件。我认为-f应该在不要求确认的情况下强制删除,但是仍然提示我在每个文件上输入"y“或"n”。

代码语言:javascript
复制
find "megapacks" -name Thumbs.db -ok rm -f {} \;

我试过type rm,看看是否有别名,它的反应是

rm别名为“rm-i”

我试着用/bin/rm代替,但是我仍然被提示

代码语言:javascript
复制
find "megapacks" -name Thumbs.db -ok /bin/rm -f {} \;

有没有人对如何避免确认有其他的想法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-02 11:46:35

问题在于-ok选项,即按照man find的选择

-exec一样,但是先问用户。如果用户同意,运行命令。否则只会返回假。

这应该适用于-exec

代码语言:javascript
复制
find "megapacks" -name Thumbs.db -exec /bin/rm -f {} \;

或更快:

代码语言:javascript
复制
find "megapacks" -name Thumbs.db -exec /bin/rm -f {} +
票数 4
EN

Stack Overflow用户

发布于 2016-08-02 11:46:12

但我认为问题在于您将-ok传递给find,这是

喜欢-exec,但是先问用户。

如果别名是问题所在,只需取消设置别名:

代码语言:javascript
复制
unalias rm

请注意,这只会影响当前shell会话。

您还可以将-delete选项用于find

代码语言:javascript
复制
find "megapacks" -name Thumbs.db -delete
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38719531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档