内容简介:使用正确的参数,find 命令是在你的系统上找到数据的强大而灵活的方式。
在最近的一篇文章中,Lewis Cowles 介绍了 find
命令。
find
是日常工具箱中功能更强大、更灵活的命令行 工具 之一,因此值得花费更多的时间。
最简单的,find
跟上路径寻找一些东西。例如:
1 2 |
find / |
它将找到(并打印出)系统中的每个文件。而且由于一切都是文件,你会得到很多需要整理的输出。这可能不能帮助你找到你要找的东西。你可以改变路径参数来缩小范围,但它不会比使用 ls
命令更有帮助。所以你需要考虑你想要找的东西。
也许你想在主目录中找到所有的 JPEG 文件。 -name
参数允许你将结果限制为与给定模式匹配的文件。
1 2 |
find ~ -name '*jpg' |
可是等等!如果它们中的一些是大写的扩展名会怎么样?-iname
就像 -name
,但是不区分大小写。
1 2 |
find ~ -iname '*jpg' |
很好!但是 8.3 名称方案是如此的老。一些图片可能是 .jpeg 扩展名。幸运的是,我们可以将模式用“或”(表示为 -o
)来组合。
1 2 |
find ~ ( -iname 'jpeg' -o -iname 'jpg' ) |
我们正在接近目标。但是如果你有一些以 jpg 结尾的目录呢? (为什么你要命名一个 bucketofjpg
而不是 pictures
的目录就超出了本文的范围。)我们使用 -type
参数修改我们的命令来查找文件。
1 2 |
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type f |
或者,也许你想找到那些命名奇怪的目录,以便稍后重命名它们:
1 2 |
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type d |
你最近拍了很多照片,所以让我们把它缩小到上周更改的文件。
1 2 |
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type f -mtime -7 |
你可以根据文件状态更改时间 (ctime
)、修改时间 (mtime
) 或访问时间 (atime
) 来执行时间过滤。 这些是在几天内,所以如果你想要更细粒度的控制,你可以表示为在几分钟内(分别是 cmin
、mmin
和 amin
)。 除非你确切地知道你想要的时间,否则你可能会在 +
(大于)或 -
(小于)的后面加上数字。
但也许你不关心你的照片。也许你的磁盘空间不够用,所以你想在 log
目录下找到所有巨大的(让我们定义为“大于 1GB”)文件:
1 2 |
find /var/log -size +1G |
或者,也许你想在 /data
中找到 bcotton 拥有的所有文件:
1 2 |
find /data -owner bcotton |
你还可以根据权限查找文件。也许你想在你的主目录中找到对所有人可读的文件,以确保你不会过度分享。
1 2 |
find ~ -perm -o=r |
这篇文章只说了 find
能做什么的表面。将测试条件与布尔逻辑相结合可以为你提供难以置信的灵活性,以便准确找到要查找的文件。并且像 -exec
或 -delete
这样的参数,你可以让 find
对它发现的内容采取行动。你有任何最喜欢的 find
表达式么?在评论中分享它们!
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- RecyclerView使用指南(一)—— 基本使用
- 如何使用Meteorjs使用URL参数
- 使用 defer 还是不使用 defer?
- 使用 Typescript 加强 Vuex 使用体验
- [译] 何时使用 Rust?何时使用 Go?
- UDP协议的正确使用场合(谨慎使用)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Python语言程序设计
[美]梁勇(Lang Y. D.) / 李娜 / 机械工业出版社 / 2015-4 / 79.00元
本书采用“问题驱动”、“基础先行”和“实例和实践相结合”的方式,讲述如何使用Python语言进行程序设计。本书首先介绍Python程序设计的基本概念,接着介绍面向对象程序设计方法,最后介绍算法与数据结构方面的内容。为了帮助学生更好地掌握相关知识,本书每章都包括以下模块:学习目标,引言,关键点,检查点,问题,本章总结,测试题,编程题,注意、提示和警告。 本书可以作为高等院校计算机及相关专业Py......一起来看看 《Python语言程序设计》 这本书的介绍吧!