linux文件查找

目录

grep:  文件内容过滤

which:  查找命令

whereis:  查询位置

find:  文件查找,针对文件名

按文件名

按文件大小

按时间查找

按文件类型    -type [fdlb..]

按文件权限    -perm  权限

找到后处理的动作


grep:  文件内容过滤

用法:grep 'string' 目标文件

示例:

[root@qf-2 ~]# grep 'root' /etc/passwd

root:x:0:0:root:/root:/bin/bash

operator:x:11:0:operator:/root:/sbin/nologin

which:  查找命令

示例:

[root@qf-2 ~]# which ls

alias ls='ls --color=auto'

       /usr/bin/ls

whereis:  查询位置

find:  文件查找,针对文件名

用法: find 路径 条件 跟条件相关的操作符   [-exec 动作]

注意:默认不写路径时查找的是当前路径.

按文件名

示例:

[root@qf-2 ~]# find / -name "*.txt"

按文件大小

示例:

[root@qf-2 ~]# find /root -size 10M      大小等于10M

[root@qf-2 ~]# find /root -size -10M     大小小于10M

[root@qf-2 ~]# find /root -size +10M     大小大于10M

[root@qf-2 ~]# find /root -size +3M -o -size -5M   大于3M或小于5M的文件

[root@qf-2 ~]# find /root -size +3M -a -size -5M   大于3M并小于5M的文件

按时间查找

天:

-atime    访问时间

-mtime   改变时间    内容修改时间会改变

-ctime    修改时间    属性修改时间会改变

分钟:

-amin    -mmin     -cmin

+n:之前       -n:之内

示例:

[root@qf-2 ~]# find /home -atime +1        访问时间1天之前

[root@qf-2 ~]# find /home -mtime +5        内容修改5天之前

[root@qf-2 ~]# find /home -ctime -5         属性修改5天之内

按文件类型    -type [fdlb..]

[root@qf-2 ~]# find /home -type f      f普通文件

[root@qf-2 ~]# find /home -type d      d目录文件

[root@qf-2 ~]# find /home -type l       l链接

[root@qf-2 ~]# find /home -type b      b块设备

按文件权限    -perm  权限

[root@qf-2 ~]# find . -perm 644      查找权限为644的文件

[root@qf-2 ~]# find /usr/bin  -perm -4644  查找权限为644而且为suid的文件

[root@qf-2 ~]# find /usr/bin  -perm -2644  查找权限为644而且为sgid的文件

[root@qf-2 ~]# find /usr/bin  -perm -1644  查找权限为644而且为T权限的文件

找到后处理的动作

[root@qf-2 ~]# find /root -name "a*" -print      打印
[root@qf-2 ~]# find /root -name "dsf*f" -exec mv {} /root \;  exec命令对之前查找出来的文件做进一步操作

[root@qf-2 opt]# touch test-{1..10} && mkdir test1

[root@qf-2 opt]# ls

test1  test-1  test-10  test-2  test-3  test-4  test-5  test-6  test-7  test-8  test-9

[root@qf-2 opt]# find /opt -name "test*" -exec rm -rf {} \;

[root@qf-2 opt]# ls

-exec:参数是一个一个传递的,传递一个参数执行一次命令。

xargs:将前一个命令的标准输出传递给下一个命令,作为它的参数转换成下一个命令的参数列表。

===============

1exec 每处理一个文件或者目录,它都需要启动一次命令,效率不好;

2exec 格式麻烦,必须有 {}   \;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值