locate
只能按照文件名搜索 速度快,因为由一个文件索引 updaedb find是全部遍历
缺点,数据不及时 比如新建的文件 立即找不到,必须强制更新 mlocate.db
强制更新 数据库 updaedb
locate 配置文件 /etc/updatedb.conf
PRUNE_BIND_MOUNTS=”yes” yes 下面的规则全部都生效 no 全都不生效
# PRUNENAMES=”.git .bzr .hg .svn” 忽略 该种格式的文件更新
PRUNEPATHS=”/tmp /var/spool /media /home/.ecryptfs /var/lib/schroot” 这种目录中更新的文件不搜索
PRUNEFS=”NFS nfs nfs4 rpc_pipefs afs binfmt_misc proc smbfs autofs iso9660 ncpfs coda devpts ftpfs devfs mfs shfs sysfs cifs lustre tmpfs usbfs udf fuse.glusterfs fuse.sshfs curlftpfs ecryptfs fusesmb devtmpfs”
不筛选/搜索 如上系统格式类型
命令找命名 whereis which
whereis -b 只显示命令位置 -m只显示文档位置 更多选项 whereis –help
zhang@zhangleitao:/tmp$ whereis pwd
pwd: /bin/pwd /usr/include/pwd.h /usr/share/man/man1/pwd.1.gz
which
centos6.5:
[root@AY140703205709916892Z ~]# which cd
/usr/bin/which: no cd in (/usr/local/mysql5.5/bin/:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin)
[root@AY140703205709916892Z ~]# echo $PATH
/usr/local/mysql5.5/bin/:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin
ubuntu16.04
which cd 没有任何提示
cd是shell内置的命令 不属于linux系统命令
find 过于强大
按照名称搜索 find path -name 文件名 区分大小写 -iname 文件名 不区分大小写
搜索属于精准匹配 想模糊搜索可以用通配符 * 任意字符”*abcd*”含有abcd的文件 “?abcd”开头任意一个字符结尾是abcd的 ” e[abcd]” 开头是e结尾是 a 或 b 或 c 或d 的文件
按照文件归属搜索 find path -user root 搜索属于 root 用户的文件 -nouser 搜索没有文件归属的文件
在 linux中除了 内核产生的文件 目录proc sys 内的 以及外来文件 如 光盘 移动硬盘 U盘等 其它没有归属的文件都是垃圾文件
按照I节点查询 find path -inum i节点号
i节点号可以用 ls -i 查看
1 2 3 4 5 6 7 8 9 | zhang@zhangleitao:/tmp$ ls -i 4587531 config-err-NyoEOL 4587561 fcitx-socket-:1 4587609 grilo-plugin-cache-I2NHZY 4587608 grilo-plugin-cache-PM1OZY zhang@zhangleitao:/tmp$ sudo find -inum 4587531 ./config-err-NyoEOL zhang@zhangleitao:/tmp$ |
按照时间搜索 find path -atime 10 十天前这24小时内访问的文件 -10十天内被访问的文件 +10 10天之前被访问的文件
-ctime 表示 改变时间
-mtime 修改时间
搜索 前两天 到前一天被修改的文件 可以用 -a 表示 and -o 表示 or -exec 命令 {} \ ;固定格式 表示处理前面命令执行的结果交给第二个命令处理{} 和 \之间由空格
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | zhang@zhangleitao:/tmp$ sudo find . -mtime -2 -a -mtime -1 -exec ls -lh {} \; 总用量 60K -rw------- 1 zhang zhang 0 5月 6 02:00 config-err-NyoEOL srw------- 1 zhang zhang 0 5月 6 02:00 fcitx-socket-:1 drwx------ 2 zhang zhang 4.0K 5月 6 11:56 grilo-plugin-cache-I2NHZY drwx------ 2 zhang zhang 4.0K 5月 6 11:56 grilo-plugin-cache-PM1OZY drwx------ 2 zhang zhang 4.0K 5月 6 11:56 grilo-plugin-cache-SPBOZY drwxr-xr-x 2 zhang zhang 4.0K 5月 7 18:27 hsperfdata_zhang drwx------ 2 zhang zhang 4.0K 5月 7 21:58 kde-zhang srwxrwxrwx 1 mysql mysql 0 5月 6 01:59 mysql.sock drwx------ 2 root root 4.0K 5月 6 01:59 pulse-PKdhtXMmr18n -rw------- 1 zhang zhang 23 5月 6 23:03 sess_1pdkp3lucqfc17v9594ki5e1r7 -rw------- 1 zhang zhang 14 5月 6 02:10 sess_nnibu71ifg1chs9qc31it3g1h5 -rw-rw-rw- 1 zhang zhang 5 5月 6 02:00 sogou-qimpanel:1.pid srwxrwxr-x 1 zhang zhang 0 5月 6 02:00 sogou-qimpanel-cellzhang srwxrwxr-x 1 zhang zhang 0 5月 6 02:00 sogou-qimpanelzhang drwx------ 3 root root 4.0K 5月 6 01:59 systemd-private-661861c3157e49ce9961578d277c1337-colord.service-aeIKQQ drwx------ 3 root root 4.0K 5月 6 01:59 systemd-private-661861c3157e49ce9961578d277c1337-rtkit-daemon.service-cUVaxz drwx------ 3 root root 4.0K 5月 6 01:58 systemd-private-661861c3157e49ce9961578d277c1337-systemd-timesyncd.service-Ux01pR drwx------ 2 zhang zhang 4.0K 5月 7 21:59 tracker-extract-files.1000 drwxrwxrwt 2 root root 4.0K 5月 6 01:59 VMwareDnD drwx------ 2 root root 4.0K 5月 6 01:59 vmware-root 总用量 4.0K -rw-rw-r-- 1 zhang zhang 110 5月 7 21:58 xauth-1000-_1 -rw-rw-r-- 1 zhang zhang 110 5月 7 21:58 ./kde-zhang/xauth-1000-_1 总用量 0 总用量 0 zhang@zhangleitao:/tmp$ |
按照大小搜索 find path -size 文件大小
10k (k小写) 10M(m大写) 10 占用10个数据块 大小的文件 ,这个数据块不是硬盘格式化的时候那个 4k 对其的数据块 而是扇区和磁道 交叉形成的那个数据块 (每一个固定512字节) 所以10 就代表是 5120字节大小的文件
还有 +10k表示大于 10k的文件 -10k 表示小于10k的文件
找 后缀是 zip的文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | zhang@zhangleitao:~/下载$ find -name "*.zip" ./bootstrap-datetimepicker-master.zip ./plupload-master.zip ./wangEditor-2.1.23.zip ./bootstrap-datepicker-master.zip ./icheck-1.x (1).zip ./201505091706.zip ./hdjs/Dev/cal/cal.zip ./layer-v3.0.3.zip ./icheck-1.x.zip ./mobile-upload-master.zip ./Discuz_X3.3_SC_UTF8.zip ./bootstrap-wysiwyg-master.zip ./NewIndex.zip ./plupload-2.3.1.zip ./wysiwyg-editor-master.zip ./PhotoSwipe-master.zip ./simditor-emoji-master.zip ./simditor-2.3.6.zip zhang@zhangleitao:~/下载$ |
找后缀是zip 并且 大于 2M的文件 小于 25M的文件
1 2 3 4 | zhang@zhangleitao:~/下载$ find . -name "*.zip" -a -size +2M -a -size -25M -exec ls -lh {} \; -rw-rw-r-- 1 zhang zhang 2.9M 4月 26 17:26 ./wangEditor-2.1.23.zip -rw-rw-r-- 1 zhang zhang 11M 5月 6 09:13 ./Discuz_X3.3_SC_UTF8.zip -rw-rw-r-- 1 zhang zhang 4.0M 4月 27 12:59 ./simditor-emoji-master.zip |
查找结尾是.tgz 且占用 218个数据块的文件(很别扭计算半天)
1 2 | zhang@zhangleitao:~/下载$ find . -name "*.tgz" -a -size 218 -exec ls -lh {} \; -rw-rw-r-- 1 zhang zhang 109K 4月 19 18:09 ./apcu-5.1.8.tgz |
未经允许不得转载:开心乐窝-乐在其中 » linux 文件查找命令 汇总