linux 搜索文件的命令(centos 查找文件)
这篇文章给大家聊聊关于linux 搜索文件的命令,以及centos 查找文件对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
Linux中查找文件夹的命令
Linux中查找文件夹的命令是find命令。
Linux-文件搜索命令find的操作使用方法如下:
1、全盘搜索,也可以指定目录搜索。find搜索目录-name目标名字,find/-name file
2、这样搜索看到的都是file的完全匹配,区分大小写的,可以用-iname不区分大小写,find/-iname file。这样我们就可以多查找到大写的相关文件了。
3、我们先使用*通配符来匹配下包含file的相关文件区分大小写的:find/-name*file*。不区分大小写的:find/-iname*file*。这样匹配的话文件就比较多了,越精准的匹配越有利于查找。
4、find搜索目录-size文件大小。下面我们查找下大于100MB的文件,应该实际是102400KB*2,所有搜索命令为:find/-size+204800。-号是小于,直接写数字就是等于。
5、find搜索目录-user用户名。这里是查找属于用户名为user1的文件,linux如何添加删除用户名,可以参考Linux用户管理命令:find/-user user1。
6、find搜索目录-type d。查找某个目录下的所有目录:find/tmp-type d。
7、find搜索目录-cmin-时间(单位分钟)。查找etc下面1小时内被修改的文件,根目录下面太多了,指定一个目录:find/etc-cmin-60。
8、当然find命令是可以多个选项一起添加查询的:-a是前后条件都要满足,-o是满足一个条件就好,这样我们可以清除的看到被过滤掉的文件。
Linux系统中怎么搜索文件命令大全
命令1:which
"which命令"查找且只能查找命令所在目录
例如:which ls
命令2:whereis
"whereis命令"查找且只能查找命令所在目录+帮助文档位置
whereis命令
命令位置+帮助文档位置
命令3:find
"find路径查找方式参数"可以查找任何文件
查找方式有很多种:
1.根据文件名查找
查找方式:-name
例如: find/t3-name file1
注:文件名可以用通配符
*多个字符
?单个字符
例如:find/t3-name fil*
2.根据文件大小查找
查找方式:-size(单位数据块512字节,即0.5kb)
+1000
-1000
=1000
例如:find/t3-name-1000
3.根据文件的所有者查找
查找方式:-user
例如:find/t3-user xhc
4.根据文件的所属组查找
查找方式:-group
例如:find/t3-group greenday
5.根据最后修改时间查找
查找方式:-ctime、-atime、-mtime以天为单位
查找方式:-cmin、-amin、-mmin以分钟为单位
c改变指文件属性,指权限、所属组、所有者改变过
a访问
m修改指文件内容修改过
参数:
+超过多长时间
-多少时间之内
什么都不写刚好
例如:find/t3-mmin-120
6.根据文件类型找
查找方式:-type
例如:find/t3-type d
7.根据i节点查找
查找方式:-inum
例如:find/t3-inum 14
8.多重条件
-a逻辑与
-o逻辑或
例如:find-size+80-a-size-100
4.查找后操作
固定格式:find xxx-exec命令{};
例如:find/t3-mmin-120-exec ls-l{};查找两小时内被修改过的文件并列出详细信息
locate
updatedb
grep
例子:grep ftp文件名a输出a文件中包含ftp的行
Linux中使用grep命令搜索文件名及文件内容的方法
从文件中搜索并显示文件名
当你从不止一个的文件中搜索时,默认它将显示文件名:
代码如下:
grep"word"文件名
grep root/etc/*
示例输出:
代码如下:
/etc/bash.bashrc: See"man sudo_root" for details.
/etc/crontab:17**** root cd/ run-parts--report/etc/cron.hourly
/etc/crontab:25 6*** root test-x/usr/sbin/anacron||( cd/ run-parts--report/etc/cron.daily)
/etc/crontab:47 6** 7 root test-x/usr/sbin/anacron||( cd/ run-parts--report/etc/cron.weekly)
/etc/crontab:52 6 1** root test-x/usr/sbin/anacron||( cd/ run-parts--report/etc/cron.monthly)
/etc/group:root:x:0:
grep:/etc/gshadow: Permission denied
/etc/logrotate.conf: create 0664 root utmp
/etc/logrotate.conf: create 0660 root utmp
每行开始的第一个部分是文件名(如:/etc/crontab、/etc/group)。使用-l选项可以只显示文件名:
代码如下:
grep-l"string" filename
grep-l root/etc/*
示例输出:
代码如下:
/etc/aliases
/etc/arpwatch.conf
grep:/etc/at.deny: Permission denied
/etc/bash.bashrc
/etc/bash_completion
/etc/ca-certificates.conf
/etc/crontab
/etc/group
你也可以逆转输出;使用-L选项来输出那些不匹配的文件的文件名:
代码如下:
grep-L"word" filename
grep-L root/etc/*
示例输出:
代码如下:
/etc/apm
/etc/apparmor
/etc/apparmor.d
/etc/apport
/etc/apt
/etc/avahi
/etc/bash_completion.d
/etc/bindresvport.blacklist
/etc/blkid.conf
/etc/bluetooth
/etc/bogofilter.cf
/etc/bonobo-activation
/etc/brlapi.key
根据文件内容查找文件
输入以下命令:
代码如下:
grep'string'*.txt
grep'main('*.c
grep'#include'*.c
grep'getChar*'*.c
grep-i'ultra'*.conf
grep-iR'ultra'*.conf
其中
-i:忽略模式(匹配字符串 valid、 VALID、 ValID)和输入文件(匹配 file.c FILE.c FILE.C)的大小写。
-R:递归读取每个目录下的所有文件。
高亮匹配到的模式
在搜索大量文件的时候你可以轻松地高亮模式:
代码如下:
$ grep--color=auto-iR'getChar();'*.c
为查找到的模式显示文件名和行号
你也许需要显示文件名和行号:
代码如下:
$ grep--color=auto-iRnH'getChar();'*.c
其中,
-n:在输出的每行前面添加以 1开始的行号。
-H:为每个匹配打印文件名。要搜索多个文件时这是默认选项。(LCTT译注:-h选项强制隐藏文件名;另外-l和-L选项用于仅显示匹配/不匹配的文件名,而-H和-h用于控制在显示匹配行前显示/不显示文件名,注意区分。)
代码如下:
$grep--color=auto-nH'DIR'*
输出样例:
你也可以使用 find命令:
代码如下:
$ find.-name"*.c"-print| xargs grep"main("