Linux 系统下 查找文件 命令总结,这个很哇塞!

element的el-cascader组件动态加载,以及报错处理问题 Blocked aria-hidden on an element because its descendant retained focus. The focus must not be hidden from assistive technology users. 报错处理 阅读详情

点击上方“码农突围”,马上关注

这里是码农充电第一站,回复“666”,获取一份专属大礼包

真爱,请设置“星标”或点个“在看

d1d3c22b3a12db2557e9377b4650ddf1.png文章出处:http://u6.gg/kq67b、样式编辑:网络工程师阿龙

查命令绝对路径: 

which用于查找并显示给定命令的绝对路径,环境变量中PATH参数也可以被查出来。

[root@localhost ~]# which bash
/usr/bin/bash

[root@localhost ~]# which ls
alias ls='ls --color=auto'
    /usr/bin/ls

寻找特定文件: 

whereis命令用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径,该命令只能用于程序名的搜索

[root@localhost ~]# whereis --help

语法格式:[ whereis [选项] 文件名 ]

        -b              #只找二进制文件
        -m              #只找man文档
        -s              #只找源代码

使用 whereis -b 命令找二进制文件,与帮助手册。

[root@localhost ~]# whereis -b ifconfig
ifconfig: /usr/sbin/ifconfig

[root@localhost ~]# whereis -m ifconfig
ifconfig: /usr/share/man/man8/ifconfig.8.gz

缓存查找文件: 

locate 搜索一个数据库/var/lib/mlocatedb,这个数据库中含有本地所有文件信息,Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件,为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库,updatedb命令会根据/etc/updatedb.conf来更新文件.

[root@localhost ~]# yum install -y mlocate
[root@localhost ~]# locate --help

语法格式:[ locate [选项] 文件名 ]

        -d 目录        #指定数据库所在的目录
        -i             #忽略大小写差异
        -r             #后面接正则表达式

使用 locate 命令查询一个文件.

[root@localhost ~]# updatedb 
[root@localhost ~]# locate /etc/passwd
/etc/passwd
/etc/passwd-

遍历文件查找:

 find 命令可以说是最重要的查找命令了,该命令参数较多。

[root@localhost ~]# find --help

语法格式:[ find [目录] [属性] 文件名 ]

        -name         #按文件名查找
        -size         #根据大小查找
        -user         #根据属主查找
        -perm         #根据权限查找
        -type         #根据类型查找
        -time         #按时间查找
        -inum         #根据i节点查询
        -exec         #查找后执行命令

-name 按文件名查找:

常用查询通配符

\*     #匹配任意一个或多个字符
?     #匹配任意一个字符
[]     #指定范围,外侧加引号

查找/var/目录下,以.log结尾的文件.

[root@localhost ~]# find /var/ -name "*.log"
/var/log/tuned/tuned.log
/var/log/audit/audit.log
/var/log/anaconda/X.log
/var/log/anaconda/program.log
....省略....

查找/root/目录下,以[1-3之间],结尾是.txt的文件

[root@localhost ~]# ls
1.txt  2.txt  3.txt  Catalog  File

[root@localhost ~]# find /root/ -name "[1-3].txt"
/root/1.txt
/root/2.txt
/root/3.txt

查找/etc/目录下,开头是6个任意字符的文件

[root@localhost ~]# find /etc/ -name "??????"
/etc/grub.d
/etc/grub.d/README
/etc/shells
/etc/init.d
....省略....

-size 根据大小查找

单位是 block 数据块  一块是512字节
1M -> 1024k -> 2048 块  (1块是0.5k 也就是512字节)
100M -> 102400k -> 204800块

查找/etc/目录下,小于10k的文件

root@localhost ~]# find /etc/ -size -10k
/etc/crypttab
/etc/.pwd.lock
/etc/environment
....省略....

查找/etc/目录下,大于1M的文件

[root@localhost ~]# find /etc/ -size +1M   #查询大于1M的文件
/etc/udev/hwdb.bin
/etc/selinux/targeted/active/policy.kern
/etc/selinux/targeted/contexts/files/file_contexts.bin
/etc/selinux/targeted/policy/policy.31
....省略....

#注意:+-号如果没有,是精确到这么大,通常都会带上+或-号表示一个范围.

-user 根据属主与权限查找

在/root目录中查找属于wang用户的文件

[root@localhost ~]# find /root/ -user wang
/root/1.txt
/root/2.txt
/root/3.txt
#注意:系统中要存在该用户,否则会报错误.

查找/boot/目录中权限是644的文件

[root@localhost ~]# find /boot/ -perm 0644
/boot/grub2/device.map
/boot/grub2/i386-pc/gcry_rmd160.mod
/boot/grub2/i386-pc/acpi.mod
/boot/grub2/i386-pc/gcry_rsa.mod
....省略....

-type 根据类型查找

-type f 二进制文件(普通文件)
-type l 软链接文件
-type d 目录

查找/usr/bin/目录下,类型是二进制文件.

[root@localhost ~]# find /usr/bin/ -type f
/usr/bin/cp
/usr/bin/gzip
/usr/bin/alias
/usr/bin/csplit
/usr/bin/bash
....省略....

-time 按时间查找

按天数   ctime  atime  mtime
按分钟   cmin   amin     mmin

  c  change   #表示属性被修改过:所有者、所属组、权限
  a  access   #被访问过(被查看过)
  m  modify   #表示内容被修改过

查找/etc/目录下,在120分钟以内,内容被修改过的文件

[root@localhost ~]# find /etc/ -mmin -120
/etc/
/etc/resolv.conf
/etc/group-
/etc/gshadow-
/etc/group
/etc/gshadow
....省略....

查找/etc/目录下,在7天之前,属性被修改过的文件

[root@localhost ~]# find /etc/ -ctime +7
/etc/resolv.conf
/etc/group-
/etc/gshadow-
....省略....

-inum 根据i节点查询

有一些文件的硬链接数量很多,有相同的i节点,查找其中一个文件的i节点号,一次性删除。

[root@localhost ~]# find ./ -inum 1024 -exec rm{} \;   #删除相同I节点的数据

-and or 逻辑连接符

-a    (and 逻辑与)     
-o    (or  逻辑或)

在/etc/目录下,查找大于1k,并且小于10k的文件

[root@localhost ~]# find /etc/ -size +1k -a -size -10k
/etc/
/etc/grub.d/00_header
/etc/grub.d/20_ppc_terminfo
/etc/grub.d/00_tuned
/etc/rc.d/init.d/README
/etc/rc.d/init.d/netconsole
/etc/rc.d/init.d/network
/etc/pam.d
....省略....

-exec 命令执行连接符

[查询格式] find  ...  -exec 命令 {}  \;

{}        #表示find查询的结果集
\         #是转义符,不使用命令别名,直接使用命令本身
;         #分号是表示语句的结束.

#注意:固定格式,只能这样写.注意中间的空格.
(公众号:网络工程师阿龙)-----------------------------------------------------------------
说明: 转义符的作用是什么?

在linux中有一个别名机制,如rm删除文件,执行的却是rm -i(用which rm 可以查看命令别名),
使用rm删除文件前会提示,就是因为rm -i这个参数。如果想使用命令原意,可以在加\转义,
如:\rm test.txt   则不会提示,直接删除

查找/var/log/目录下名字以.log结尾的文件,找到后执行 ls -l 显示详细信息.

[root@localhost ~]# find /var/log/ *.log -exec ls -l {} \;
total 1176
drwxr-xr-x. 2 root   root      204 Sep 18 09:12 anaconda
drwx------. 2 root   root       23 Sep 18 09:12 audit
-rw-------. 1 root   root    53001 Sep 19 00:57 boot.log
-rw-------. 1 root   utmp      384 Sep 18 09:22 btmp
drwxr-xr-x. 2 chrony chrony      6 Apr 12 13:37 chrony
-rw-------. 1 root   root     3523 Sep 19 01:01 cron
-rw-r--r--  1 root   root   119414 Sep 19 00:57 dmesg
-rw-r--r--  1 root   root   119599 Sep 18 23:35 dmesg.old
-rw-r--r--. 1 root   root     1320 Sep 19 00:23 firewalld
-rw-r--r--. 1 root   root      193 Sep 18 09:05 grubby_prune_debug
....

查找/etc/目录下名字以"init*"开头的文件,找到后,只列出文件,过滤掉目录,并执行 ls -l 显示详细信息.

[root@localhost ~]# find /etc/ -name "init*" -a -type f -exec ls -l {} \;

-rw-r--r--. 1 root root 511 Apr 11 01:09 /etc/inittab
-rw-r--r--. 1 root root 798 Apr 11 01:09 /etc/sysconfig/init
-rwxr-xr-x. 1 root root 5419 Jan  2  2018 /etc/sysconfig/network-scripts/init.ipv6-global
-rw-r--r--. 1 root root 30 Apr 11 14:12 /etc/selinux/targeted/contexts/initrc_context

查找/tmp/下,的yum.log文件,找到后直接删除.

[root@localhost tmp]# find /tmp/ -name yum.log -exec rm {} \;
[root@localhost tmp]#

查找根下,找关于lyshark用户的所有文件,找到后直接删除.

[root@localhost ~]# find / -user lyshark -exec rm -r {} \;

find: ‘/proc/1465/task/1465/fd/6’: No such file or directory
find: ‘/proc/1465/task/1465/fdinfo/6’: No such file or directory
find: ‘/proc/1465/fd/5’: No such file or directory
find: ‘/proc/1465/fdinfo/5’: No such file or directory
find: ‘/root/Catalog’: No such file or directory
find: ‘/home/lyshark’: No such file or directory
#rm -r 连带目录一起删除.报错原因:-exec 不适合大量传输,速率慢导致.

在根下,查找lyshark用户的文件,找到后删除,删除前会提示是否删除.

[root@localhost ~]# find / -user lyshark -ok rm -r {} \;
find: ‘/proc/1777/task/1777/fd/6’: No such file or directory
find: ‘/proc/1777/task/1777/fdinfo/6’: No such file or directory

< rm ... /root/LyShark > ? y
# -ok的使用和-exec是一样的,区别是-ok,执行时会提示你是否进行下一步操作.
(完)
码农突围资料链接1、卧槽!字节跳动《算法中文手册》火了,完整版 PDF 开放下载!
2、计算机基础知识总结与操作系统 PDF 下载
3、艾玛,终于来了!《LeetCode Java版题解》.PDF
4、Github 10K+,《LeetCode刷题C/C++版答案》出炉.PDF

欢迎添加鱼哥个人微信:smartfish2020,进粉丝群或围观朋友圈。
字节系,ali系,ks,pdd最新抓包方案 各大厂安卓逆向 阅读详情

相关推荐

【30天从零玩转AI应用开发】第16篇:智能体Agent入门——ReAct框架原理+首个会思考、会动手的AI实战

摘要: 本介绍了AI智能体(Agent)的核心概念及其与普通大模型(LLM)的区别。通过ReAct(Reason+Act)框架,智能体实现了自主思考、调用工具和分步执行的能力。章详细讲解了LangChain Agent的四大组件,并推荐新手使用ZERO_SHOT_REACT_DESCRIPTION类型。最后提供了一个完整的智能体实战代码示例,该智能体具备数学计算和天气查询功能,能够自主选择工具完成任务,展示了AI从”被动回答“到”主动行动“的关键进化。

在上海谋生的软件喵记录喵生 602

linux学习笔记-查看件内容与管道命令

1. 查看件内容命令 cat 查看小型件 more 分屏查看大型件 cat效果命令图 将bin件下的目录全部重定向到1.txt 使用more查看1.txt内容 使用空格键查看下一页内容 2.管道(|)命令的使用 管道(|):一个命令的输可以通过管道作为另一个命令的输入,可以理解是一个容器,存放在终端显示的内容 管道命令的效果图: 说明: 管道(|)一般结合More命令使用,主要是分配查看终端显示内容 管道+ more 管道是存储终端数据的容器 ...

qq_44653420的博客 1122

百度百科 X-Bk-Token 算法还原

百度百科 X-Bk-Token 算法还原

自成背后的博客 1万+

Linux操作系统入门(4)————件的查看,内容搜索,管道的使用

Linux操作系统入门(4)————件的查看,内容搜索,管道的使用

weixin_52542715的博客 1416

Linux 查看目录件 通过管道查找文件

推荐一个网址  查询linux指令的网址   http://man.linuxde.net/clear  清除当前终端界面重要的几个热键[Tab],[ctrl]-c, [ctrl]-d [Tab]按键---具有『命令补全』不『档案补齐』的功能[Ctrl]-c按键---让当前的程序『停掉』[Ctrl]-d按键---通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInpu...

一名准程序员 6031

如何找到linux的大

查找 Linux 系统中的大件,可以使用以下命令: find / -type f -size +100M 该命令会在整个系统查找所有大小超过 100MB 的件。 du -a / | sort -n -r | head -n 20 该命令会列系统中前 20 个最大的件。 lsof +L1 该命令会列所有大小超过 1KB 的件。 注意:在使用这些命令之前,请先确保已经安装了...

weixin_35749796的博客 1656

Linux命令件操作

1.在/tmp/目录下创建test.txt件,内容为:Hello,World!,用一个命令来。 答: echo "Hello,World!" > /tmp/test.txt 2.给test.txt件除所有者之外增加执行权限,最终以数字写件的权限。 答: 655 默认是644,可以通过"chmod 655 /tmp/test.txt" 3.用vi命令编辑test.txt,如何跳转到末行,首行,行首、行末,如何在光标行...

红目香薰 2875

Linux 系统查找文件命令总结,这个很哇塞

命令绝对路径: which用于查找并显示给定命令的绝对路径,环境变量中PATH参数也可以被查来。[root@localhost~]#whichbash /usr/bin/bash...

关注微信公众号【开源Linux】,后台回复『10T』,领取10T学习资源大放送,涵盖Linux、虚拟化、容器、云计算、网络、Python、Go等书籍和视频 607

Linux 系统查找文件 命令总结,这个很哇塞

命令绝对路径: which用于查找并显示给定命令的绝对路径,环境变量中PATH参数也可以被查来。 [root@localhost ~]# which bash /usr/bin/bash [root@localhost ~]# which ls alias ls='ls --color=auto' /usr/bin/ls 寻找特定件: whereis命令用来定位指令的二进制程序、源代码件和man手册页等相关件的路径,该命令只能用于程序名的搜索 [root@localhost ~]# .

大模型教程的博客 295

哇塞!原来Linux要这么用!快来围观!

1.Linux:免费,开源,稳定高效--->更安全2.阿里云,腾讯云,亚马逊aws业务,说白了就是给企业提供Linux后台云服务的。(一般中小型公司不会自建机房,成本太高。

大家好,我是敖云岚,一个沉迷代码的 “技术玩家”。擅长 Java、C++ 开发,对 MySQL、Redis、RabbitMQ 等技术也颇有研究。博客里既有硬核技术干货,也有诙谐幽默的编程日常分享。愿和你一起,笑着学技术,快乐敲代码! 1952

Linux安装Nginx 作者:哇塞大嘴好帅

Linux安装Nginx 作者:哇塞大嘴好帅 作者:哇塞大嘴好帅 哇塞大嘴好帥 1.环境确保工作 如果ls等指令失效输入 export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 确保XShell能链接Linux 2.去Nginx官网下载Nginx Nginx官网:http://nginx.org/http://nginx.org/ 下载地址: http://nginx.org/downloa

qq_40102411的博客 1741

哇塞!NTQQ!

说到这个NT,熟悉Windows的同学应该不会陌生,微软当年搞Windows时,为了和早期的Windows版本相区分,就提了一个Windows NT的内核,NT意思就是New Technology,这一次腾讯使用了这个名字,足以看这不是一次普通的版本更新,更是一次技术架构的自我革命。不过话说回来,技术方案没有银弹。除此之外,最近几年由于众所周知的原因,国家很多重点单位、企业、高校都对国产化平台的呼声越来越强,有了Electron的技术加持,未来,QQ对国产化平台,对信创的支持都将不再是问题。

IT界那些事儿 7114

【干货收藏】最全50个常用Linux命令汇总,新手运维必备工具箱!

精选了50个Linux高频命令,涵盖件操作、系统监控、网络排查和用户管理等运维核心场景。从基础的cd/ls到专业的htop/ss,每个命令都配有简洁说明,帮助新手快速搭建运维知识体系,老手查漏补缺。掌握这些命令能显著提升工作效率,形成运维"肌肉记忆",是Linux系统管理的必备技能工具箱。章还推荐了多篇相关技术章,包括Docker部署、Kubernetes安装等实用指南。

didiplus 556

9 个哇塞的 GitHub 项目,建议收藏 !

与市面上收费昂贵的商业ERP不同,ERPNext完全免费开源,企业可以根据自身需求自由定制,无需支付高昂的许可费用。这不仅仅是一款简单的截图工具,它还关心你的后续操作,内置了丰富的编辑功能。MAZANOKE 是一个简单的图像优化器,可以在您的浏览器中运行,离线工作,并且在不离开设备的情况下保持您的图像隐私。作为Dropbox、Google Drive和OneDrive等的替代品,具有新颖的界面和强大的功能。隐私优先的个人云,将所有件、应用程序和游戏保存在一个安全的地方,随时随地均可访问。

喜欢Python编程的程序员柚柚呀 977

哇塞大嘴好帅-Linux安装Redis Docker安装Redis 作者:哇塞大嘴好帥(哇塞大嘴好帅)

Linux安装Redis 1.在Linux里docker安装redis ​ 获取最新的redis镜像 docker pull redis:latest 2.查看本地是否安装redis docker images 3.运行redis docker run --name redis -p 6379:6379 -d --restart=always redis redis-server --appendonly yes --requirepass "您的密码" 4.查看是否运行 docker ps

qq_40102411的博客 1636

有趣!好玩!Ubuntu下的小命令

Ubuntu下有趣好玩的命令 带你装逼带你飞,带你冲进垃圾堆,哈哈 开个玩笑,这次为各位整理的几个Ubuntu下好玩的小命令,接下来让我们来看一下,冲!冲!冲! 一、黑客帝国——流星雨 没用安装过的小伙伴需要安装哦~ 安装 sudo apt-get install cmatrix 运行 cmatrix 然后我们来看看效果 想要关闭按ctrl+c 二、高大上仪表盘——假装自己很nb 安装 sudo apt-get install hollywood 运行 hollywood 效果如下: 是不是很哇塞~

WANG_g_m的博客 1543

Linux安装jdk1.8 作者:哇塞大嘴好帥

Linux安装jdk1.8 作者:哇塞大嘴好帥 ​ 作者:哇塞大嘴好帥(哇塞大嘴好帅) 1.查找java相关的列表 yum -y list java 2.安装jdk yum install java-1.8.0-openjdk.x86_64 3.验证 java -version 4.配置java环境 通过yum安装的默认路径为:/usr/lib/jvm 进入即可 4.1将jdk的安装路径加入到JAVA_HOME 输入 进入件 vi /etc/profile 在最后面加入 #set java env

qq_40102411的博客 1588

Linux 系统负载常用查看命令介绍

目录前言一、硬件规格1. CPU2. 磁盘3. 内存二、系统负载1. top2. free3. iostat4. glances 前言 本以 MySQL 数据库为例 处理自建数据库问题时,我们需要了解更多的系统信息,如果没有监控,则需要我们使用 Linux 命令得到这些数据,本介绍如何获得这些信息,和 Python 监控脚本设计思路。 一、硬件规格 1. CPU 需要了解的信息有该服务器的 CPU 是几个核心,可以使用下方 Linux 命令获取: lscpu 2. 磁盘 使用 df 命令能够列

分享既学习 2549

2025二级域名分发系统/二级域名解析平台/二级域名分发系统商业版网站源码

省略简介了,源码内有教程,演示站点前台:https://shang.35ymw.com 用户:1234 密码:1234后台:https://shang.35ymw.com/admin 用户:admin 密码:123456

sam3-onnx-cpp-main.zip

提供了 Segment Anything Model 3 (SAM3) 的 C++ 实现,支持基于本、点和框提示词的分割任务。使用 ONNX Runtime 进行推理,使用 OpenCV 进行图像处理和可视化。

上一篇: 投资127亿!深圳,再添一所985
下一篇: 经典面试题:Integer c=100,d=100,c==d 一定是false吗?
Ch97CKd
博客等级 码龄9年 1675粉丝 · 274原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值