如何在 Linux 中查找文件
创始人
2024-03-01 22:46:20
0次

使用简单的命令在 Linux 下基于类型、内容等快速查找文件。

如果你是 Windows 或 OSX 的非资深用户,那么可能使用 GUI 来查找文件。你也可能发现界面受限,令人沮丧,或者两者兼而有之,并学会了组织文件并记住它们的确切顺序。你也可以在 Linux 中做到这一点 —— 但你不必这样做。

Linux 的好处之一是它提供了多种方式来处理。你可以打开任何文件管理器或按下 Ctrl+F,你也可以使用程序手动打开文件,或者你可以开始输入字母,它会过滤当前目录列表。

Screenshot of how to find files in Linux with Ctrl+F

使用 Ctrl+F 在 Linux 中查找文件的截图

但是如果你不知道你的文件在哪里,又不想搜索整个磁盘呢?对于这个以及其他各种情况,Linux 都很合适。

按命令名查找程序位置

如果你习惯随心所欲地放文件,Linux 文件系统看起来会让人望而生畏。对我而言,最难习惯的一件事是找到程序在哪里。

例如,which bash 通常会返回 /bin/bash,但是如果你下载了一个程序并且它没有出现在你的菜单中,那么 which 命令就是一个很好的工具。

一个类似的工具是 locate 命令,我发现它对于查找配置文件很有用。我不喜欢输入程序名称,因为像 locate php 这样的简单程序通常会提供很多需要进一步过滤的结果。

有关 locate 和 which 的更多信息,请参阅 man 页面:

  • man which
  • man locate

find

find 工具提供了更先进的功能。以下是我安装在许多服务器上的脚本示例,我用于确保特定模式的文件(也称为 glob)仅存在五天,并且所有早于此的文件都将被删除。 (自上次修改以来,分数用于保留最多 240 分钟的偏差)

find ./backup/core-files*.tar.gz -mtime +4.9 -exec rm {} \;

find 工具有许多高级用法,但最常见的是对结果执行命令,而不用链式地按照类型、创建日期、修改日期过滤文件。

find 的另一个有趣用处是找到所有有可执行权限的文件。这有助于确保没有人在你昂贵的服务器上安装比特币挖矿程序或僵尸网络。

find / -perm /+x

有关 find 的更多信息,请使用 man find 参考 man 页面。

grep

想通过内容中查找文件? Linux 已经实现了。你可以使用许多 Linux 工具来高效搜索符合模式的文件,但是 grep 是我经常使用的工具。

假设你有一个程序发布代码引用和堆栈跟踪的错误消息。你要在日志中找到这些。 grep 不总是最好的方法,但如果文件是一个给定的值,我经常使用 grep -R。

越来越多的 IDE 正在实现查找功能,但是如果你正在访问远程系统或出于任何原因没有 GUI,或者如果你想在当前目录递归查找,请使用:grep -R {searchterm} 或在支持 egrep 别名的系统上,只需将 -e 标志添加到命令 egrep -r {regex-pattern}。

我在去年给 Raspbian 中的 dhcpcd5 打补丁时使用了这种技术,这样我就可以在树莓派基金会发布新的 Debian 时继续操作网络接入点了。

哪些提示可帮助你在 Linux 上更有效地搜索文件?


via: https://opensource.com/article/18/4/how-find-files-linux

作者:Lewis Cowles 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...