Ubuntu文件查找命令集合
本人常用:
find -name "文件名" //查找文件
finde ./ -name "文件名/*.F90..." | xargs grep "某内容" //根据文件类型和文件内容查找
grep -n -H -R "某内容"
-n 显示行号
-H 显示文件名
-R 递归查找每个子目录
以下总结自网上各路博客:
一.以文件名查找:
1. find 命令
find命令的一般形式为;
find pathname -options [-print -exec -ok ...]
eg. find / -name "filename"
目的:在根目录“/”开始搜被称为filename的文件,“filename”文件名可以包含通配符(*,?),注意:filename是文件名字符串,可以带双引号。
find命令的参数;
-print: find命令将匹配的文件输出到标准输出。
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和;之间的空格。
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
3、find命令选项
-name
按照文件名查找文件。
-perm
按照文件权限来查找文件。
-prune
使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。
-user
按照文件属主来查找文件。
-group
按照文件所属的组来查找文件。
-mtime -n +n
按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前。find命令还有-atime和-ctime 选项,但它们都和-m time选项。
-nogroup
查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在。
-nouser
查找无有效属主的文件,即该文件的属主在/etc/passwd中不存在。
-newer file1 ! file2
查找更改时间比文件file1新但比文件file2旧的文件。
-type
查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
-size n:[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计。
-depth:在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype:查找位于某一类型文件系统中的文件,这些文件系统类型通常可以在配置文件/etc/fstab中找到,该配置文件中包含了本系统中有关文件系统的信息。
-mount:在查找文件时不跨越文件系统mount点。
-follow:如果find命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio:对匹配的文件使用cpio命令,将这些文件备份到磁带设备中。
2. locate 命令
locate filename
locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。
locate命令的使用实例:
$ locate /etc/sh
搜索etc目录下所有以sh开头的文件。
$ locate ~/m
搜索用户主目录下,所有以m开头的文件。
$ locate -i ~/m
搜索用户主目录下,所有以m开头的文件,并且忽略大小写。
发现包含字符串“filename”的文件名。这比find命令更容易。但是基于数据库(通常在夜间重建),所以你无法找到刚刚存到文件系统的文件。为了强制立即更新数据库,作为超级用户可以使用:updatedb& (中间没有空格)
3. which命令
which executeable_name
查找可执行文件,根据可执行文件的文件名。
例如 which apache2 , 返回/usr/sbin/apache2
二.以文件内容查找
1. grep -n 字符串名字 /filepath/filename
返回包含该字符串的该行,可以是多行。且包含行数。
2. sudo gedit /filepath/filename
而后,用ctrl+F 去查找相应的字符串。
3. vi或者less命令可以查找相应的内容
例如 vi /filepath/filename而后,输入 “/字符串” ,按下字母“n”到下一个匹配的字符串
4. tail命令
查看文件内容的特殊方法
1. 如果你只想看文件的前5行,可以使用head命令,如:
head -5 /etc/passwd
2. 如果你想查看文件的后10行,可以使用tail命令,如:
tail -20 /etc/passwd
tail -f /var/log/messages
参数-f使tail不停地去读最新的内容,这样有实时监视的效果
tail -f /var/log/messages
按Ctrl+C后,直接从脚本退出到提示符下了
Ubuntu文件查找命令集合相关推荐
- Linux 执行文件查找命令 which 详解
某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查 ...
- linux j查找文件位置,Linux下的文件查找命令——find
Linux下几个常见的文件查找命令: which 查看可执行文件的位置 whereis 寻找特定文件,查看文件的位置 locate 配合数据库查看文件位置 find ...
- (转载)linux下的find文件查找命令与grep文件内容查找命令
linux下的find文件查找命令与grep文件内容查找命令 转载于和感谢:linux下的find文件查找命令与grep文件内容查找命令 目录 1.前言 1.1 find命令和grep命令的区别 2. ...
- Linux文件查找命令find,xargs详述
Linux文件查找命令find,xargs详述 总结:zhy2111314 来自:LinuxSir.Org 整理:北南南北 摘要: 本文是find 命令的详细说明,可贵的是针对参数举了很多的实例,大量 ...
- linux进入文件全文搜索命令,Linux 文件查找命令详解
大家好,我是"孤云幕雨":祝大家中秋快乐,今天给大家带来的是<Linux文件查找命令> 一.locate:依赖于事先构建的索引 v依赖于事先构建的索引:索引的构建是在系 ...
- Linux 命令(一) findgrep文件查找命令
Linux 命令(一) find&grep文件查找命令 查找命令:find & grep 区别:(1) find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为 ...
- linux 遍历目录查找文件find太慢,Linux下比find快N倍的文件查找命令
使用linux操作系统的人,一般都用过文件查找命令find,在文件数量非常庞大的时候,比如在高通的android工程项目中,目录大小有十几个G,文件数量非常多,用find命令就太慢了. 下面介绍一个比 ...
- 文件查找命令 locate 和 find 详解
文件查找命令 locate 1.locate 简介 2.locate 命令格式 find 1.find 简介 2.语法格式 2.1 查找条件 2.1.1 根据文件名查找 2.1.2 根据文件从属关系查 ...
- Linux下,文件查找命令which,whereis,find,别名命令alias,统计命令wc
Linux下,文件查找命令which,whereis,find,别名命令alias,统计命令wc O.简要 1.Linux系统中查找文件比较常用的命令就是which,whereis,find,最常用的 ...
最新文章
- 红茶一杯话Binder(传输机制篇_上)
- 03-UITableView索引栏显示自定义图片
- Mozilla考虑支持H.264
- 【作者面对面问答】包邮送《Redis 5设计与源码分析》5本
- 如何在繁忙的工作中锻炼身体?
- centos从安装到环境配置
- java如何开发安卓软件_Java 程序员如何快速入门 Android 开发?
- 使用Java快速开发一个新闻爬虫项目
- SharePoint 2013 SqlException (0x80131904):找不到Windows NT 用户或组xxxx\administrator
- pearlovell
- MSM8916 海信M9模块学习记录一:编译及烧录android5.1源码
- 【系统集成项目管理工程师】信息系统集成及服务
- ROS2教程(入门级):记录和回播数据
- iOS App怎么上架到苹果TestFlight?
- 【送谷歌定制礼品】一起寻找最初的写作热忱 即刻动笔!
- Photoshop(P图)实用技巧介绍
- window10下Oracle 12c详细安装教程
- 代码覆盖检测工具 OpenCppCoverage
- 课设-机器学习课设-实现新闻分类
- 消防应急疏散指示系统在某学校项目上的应用