位置: 编程技术 - 正文

Linux find命令实例教程 15个find命令用法(linux命令find用法)

编辑:rootadmin

推荐整理分享Linux find命令实例教程 15个find命令用法(linux命令find用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux里find命令,linux find命令的使用,linux find -cmin,linux里find命令,linux find -cmin,linux里find命令,linuxfind命令实验报告,linuxfind命令实验报告,内容如对您有帮助,希望把文章链接给更多的朋友!

除了在一个目录结构下查找文件这种基本的操作,你还可以用find命令实现一些实用的操作,使你的命令行之旅更加简易。本文将介绍种无论是于新手还是老鸟都非常有用的Linux find命令。首先,在你的home目录下面创建下面的空文件,来测试下面的find命令示例。

复制代码代码如下:# vim create_sample_files.shtouch MybashProgram.shtouch mycprogram.ctouch MyCProgram.ctouch Program.cmkdir backupcd backuptouch MybashProgram.shtouch mycprogram.ctouch MyCProgram.ctouch Program.c# chmod +x create_sample_files.sh# ./create_sample_files.sh# ls -R.:backup MybashProgram.sh MyCProgram.ccreate_sample_files.sh mycprogram.c Program.c./backup:MybashProgram.sh mycprogram.c MyCProgram.c Program.c

1. 用文件名查找文件这是find命令的一个基本用法。下面的例子展示了用MyCProgram.c作为查找名在当前目录及其子目录中查找文件的方法。

复制代码代码如下:# find -name "MyCProgram.c"./backup/MyCProgram.c./MyCProgram.c

2.用文件名查找文件,忽略大小写这是find命令的一个基本用法。下面的例子展示了用MyCProgram.c作为查找名在当前目录及其子目录中查找文件的方法,忽略了大小写。

复制代码代码如下:# find -iname "MyCProgram.c"./mycprogram.c./backup/mycprogram.c./backup/MyCProgram.c./MyCProgram.c

3. 使用mindepth和maxdepth限定搜索指定目录的深度在root目录及其子目录下查找passwd文件。

复制代码代码如下:# find / -name passwd./usr/share/doc/nss_ldap-/pam.d/passwd./usr/bin/passwd./etc/pam.d/passwd./etc/passwd

在root目录及其1层深的子目录中查找passwd. (例如root — level 1, and one sub-directory — level 2)

复制代码代码如下:# find -maxdepth 2 -name passwd./etc/passwd

在root目录下及其最大两层深度的子目录中查找passwd文件. (例如 root — level 1, and two sub-directories — level 2 and 3 ) 复制代码代码如下:# find / -maxdepth 3 -name passwd./usr/bin/passwd./etc/pam.d/passwd./etc/passwd

在第二层子目录和第四层子目录之间查找passwd文件。

复制代码代码如下:# find -mindepth 3 -maxdepth 5 -name passwd./usr/bin/passwd./etc/pam.d/passwd

4. 在find命令查找到的文件上执行命令下面的例子展示了find命令来计算所有不区分大小写的文件名为“MyCProgram.c”的文件的MD5验证和。{}将会被当前文件名取代。

复制代码代码如下:find -iname "MyCProgram.c" -exec md5sum {} ;dd8cdfbeecfe ./mycprogram.cdd8cdfbeecfe ./backup/mycprogram.cdd8cdfbeecfe ./backup/MyCProgram.cdd8cdfbeecfe ./MyCProgram.c

5. 相反匹配显示所有的名字不是MyCProgram.c的文件或者目录。由于maxdepth是1,所以只会显示当前目录下的文件和目录。复制代码代码如下:find -maxdepth 1 -not -iname "MyCProgram.c"../MybashProgram.sh./create_sample_files.sh./backup./Program.c

6. 使用inode编号查找文件任何一个文件都有一个独一无二的inode编号,借此我们可以区分文件。创建两个名字相似的文件,例如一个有空格结尾,一个没有。

复制代码代码如下:touch "test-file-name"# touch "test-file-name "[Note: There is a space at the end]# ls -1 test*test-file-nametest-file-name

从ls的输出不能区分哪个文件有空格结尾。使用选项-i,可以看到文件的inode编号,借此可以区分这两个文件。

复制代码代码如下:ls -i1 test* test-file-name test-file-name

可以如下面所示在find命令中指定inode编号。在此,find命令用inode编号重命名了一个文件。

复制代码代码如下:find -inum -exec mv {} new-test-file-name ;# ls -i1 *test* new-test-file-name test-file-name

可以在你想对那些像上面一样的糟糕命名的文件做某些操作时使用这一技术。例如,名为file?.txt的文件名字中有一个特殊字符。若你想执行“rm file?.txt”,下面所示的所有三个文件都会被删除。所以,采用下面的步骤来删除”file?.txt”文件。

复制代码代码如下:lsfile1.txt file2.txt file?.txt

Linux find命令实例教程 15个find命令用法(linux命令find用法)

找到每一个文件的inode编号。

复制代码代码如下:ls -i file1.txt file2.txt file?.txt

如下所示:?使用inode编号来删除那些具有特殊符号的文件名。

复制代码代码如下:find -inum -exec rm {} ;# lsfile1.txt file2.txt[Note: The file with name "file?.txt" is now removed]

7. 根据文件权限查找文件下面的操作时合理的:找到具有指定权限的文件忽略其他权限位,检查是否和指定权限匹配根据给定的八进制/符号表达的权限搜索此例中,假设目录包含以下文件。注意这些文件的权限不同。

复制代码代码如下:ls -ltotal 0-rwxrwxrwx 1 root root 0 -- : all_for_all-rw-r--r-- 1 root root 0 -- : everybody_read---------- 1 root root 0 -- : no_for_all-rw------- 1 root root 0 -- : ordinary_file-rw-r----- 1 root root 0 -- : others_can_also_read----r----- 1 root root 0 -- : others_can_only_read

找到具有组读权限的文件。使用下面的命令来找到当前目录下对同组用户具有读权限的文件,忽略该文件的其他权限。

复制代码代码如下:find . -perm -g=r -type f -exec ls -l {} ;-rw-r--r-- 1 root root 0 -- : ./everybody_read-rwxrwxrwx 1 root root 0 -- : ./all_for_all----r----- 1 root root 0 -- : ./others_can_only_read-rw-r----- 1 root root 0 -- : ./others_can_also_read找到对组用户具有只读权限的文件。

复制代码代码如下:find . -perm g=r -type f -exec ls -l {} ;----r----- 1 root root 0 -- : ./others_can_only_read

找到对组用户具有只读权限的文件(使用八进制权限形式)。

复制代码代码如下:find . -perm -type f -exec ls -l {} ;----r----- 1 root root 0 -- : ./others_can_only_read

8. 找到home目录及子目录下所有的空文件(0字节文件)下面命令的输出文件绝大多数都是锁定文件盒其他程序创建的place hodersfind ~ -empty只列出你home目录里的空文件。find . -maxdepth 1 -empty只列出当年目录下的非隐藏空文件。find . -maxdepth 1 -empty -not -name ".*"

9. 查找5个最大的文件下面的命令列出当前目录及子目录下的5个最大的文件。这会需要一点时间,取决于命令需要处理的文件数量。

复制代码代码如下:find . -type f -exec ls -s {} ; | sort -n -r | head -5

. 查找5个最小的文件方法同查找5个最大的文件类似,区别只是sort的顺序是降序。

复制代码代码如下:find . -type f -exec ls -s {} ; | sort -n | head -5上面的命令中,很可能你看到的只是空文件(0字节文件)。如此,你可以使用下面的命令列出最小的文件,而不是0字节文件。

复制代码代码如下:find . -not -empty -type f -exec ls -s {} ; | sort -n | head -. 使用-type查找指定文件类型的文件

只查找socket文件find . -type s查找所有的目录find . -type d查找所有的一般文件find . -type f查找所有的隐藏文件find . -type f -name ".*"查找所有的隐藏目录find -type d -name ".*". 通过和其他文件比较修改时间查找文件显示在指定文件之后做出修改的文件。下面的find命令将显示所有的在ordinary_file之后创建修改的文件。

复制代码代码如下:ls -lrttotal 0-rw-r----- 1 root root 0 -- : others_can_also_read----r----- 1 root root 0 -- : others_can_only_read-rw------- 1 root root 0 -- : ordinary_file-rw-r--r-- 1 root root 0 -- : everybody_read-rwxrwxrwx 1 root root 0 -- : all_for_all---------- 1 root root 0 -- : no_for_all # find -newer ordinary_file../everybody_read./all_for_all./no_for_all

. 通过文件大小查找文件

使用-size选项可以通过文件大小查找文件。

查找比指定文件大的文件find ~ -size +M查找比指定文件小的文件find ~ -size -M查找符合给定大小的文件find ~ -size M注意: – 指比给定尺寸小,+ 指比给定尺寸大。没有符号代表和给定尺寸完全一样大。

. 给常用find操作取别名

若你发现有些东西很有用,你可以给他取别名。并且在任何你希望的地方执行。 复制代码代码如下:常用的删除a.out文件。alias rmao="find . -iname a.out -exec rm {} ;"# rmao删除c程序产生的core文件。alias rmc="find . -iname core -exec rm {} ;"# rmc

. 用find命令删除大型打包文件下面的命令删除大于M的*.zip文件。find / -type f -name *.zip -size +M -exec rm -i {} ;"用别名rmm删除所有大雨M的*.tar文件。使用同样的思想可以创建rm1g,rm2g,rm5g的一类别名来删除所有大于1G,2G,5G的文件。 复制代码代码如下:alias rmm="find / -type f -name *.tar -size +M -exec rm -i {} ;"# alias rm1g="find / -type f -name *.tar -size +1G -exec rm -i {} ;"# alias rm2g="find / -type f -name *.tar -size +2G -exec rm -i {} ;"# alias rm5g="find / -type f -name *.tar -size +5G -exec rm -i {} ;" # rmm# rm1g# rm2g# rm5g

find命令实例 linux日志定期迁移实现方法 节内容:linux系统中,使用find命令定期迁移linux日志的方法。一,find命令格式findpathname--options[-exec-print-ok..]二,find命令参数pathname:find命令查找的目录

linux find命令忽略某个或多个子目录的实例 使用find命令在linux系统中查找文件时,有时需要忽略某些目录,可以使用-prune参数来进行过滤。不过必须注意:要忽略的路径参数要紧跟着搜索的路径

linux find命令忽略目录的查找方法 在linux操作系统中,find命令非常强大,在文件与目录的查找方面可谓无所不至其极,如果能结合xargs命令使得,更是强大无比。以下来看看find命令忽略

标签: linux命令find用法

本文链接地址:https://www.jiuchutong.com/biancheng/356880.html 转载请保留说明!

上一篇:Linux下安装VMware Tools 的方法(linux安装vmvare)

下一篇:find命令实例 linux日志定期迁移实现方法(find linux命令详解)

  • 小规模季度不超过30万是含税还是不含税
  • 房地产销售土地属于什么收入
  • 国家税收与地方税收
  • 商品开票是什么意思
  • 小规模定额征收是怎样
  • 先开票后跨月预缴税款可以吗
  • 个体户银行开户是开公户还是私户
  • 委托加工物资属于企业资产吗
  • 发票税号不对还能报销吗
  • 企业购进软件系统后如何做账
  • 其他应付款是不是长期负债
  • 税务外管证取消了吗
  • 网上申报增值税怎么操作
  • 企业所得税研发费用100%扣除的有哪些企业
  • 建筑业营改增主要政策一览表
  • 进项税留底是什么意思
  • 营改增医院增值税
  • 小规模纳税人进材料怎么做账
  • 发票收款人和开票人
  • 油卡充值属于什么行业
  • 超市里销售
  • 行政单位提现预算会计处理
  • 挂靠车辆可以抵扣进项税么?
  • 设立全资子公司的风险
  • 车船使用税进哪个会计科目
  • 辅导费是什么
  • 商品房买卖合同备案查询
  • 佣金代扣代缴增值税还有附加税吗
  • 高新企业有啥用
  • 本部借给分公司的钱用交印花税吗
  • 错账是什么
  • 公司的利润交税之前不可能叫做什么
  • 计提本月附加税2496.28
  • 非征期不能抄报
  • 跨的基本功有哪些
  • pytorch教程
  • php 下载上传文件
  • 兼职劳务报酬如何入账
  • 跨境电商企业账务如何做账
  • 质量扣款应收账款怎么算
  • 物流进项发票应纳税额
  • 有收入就要结转成本吗为什么
  • 跨年发票一般分为哪几类
  • sqlserver2012安装后找不到
  • sql server 使用
  • 代扣代缴的个税可以税前扣除吗
  • 企业不需要交残保金吗
  • 申请制作广告牌的申请
  • 内账会计有法律风险吗
  • 电子承兑到期怎么收款
  • 子公司与母公司承担连带责任
  • 费用报销票据规范要求
  • 为什么要把工资说的好高呢
  • 经营租入的固定资产计入什么科目
  • 房屋出租要交的税有哪些
  • 国际航班怎么报销
  • 公司财务部门工作职责
  • 新公司怎样
  • sql server数据库怎么导出
  • sql server查询数据库大小
  • win7笔记本电脑怎么重装系统教程
  • ubuntu 20.04.1 lts
  • 虚拟机安装centos7.9
  • window8.1下载
  • PasSrv.exe - PasSrv是什么进程 有什么用
  • win7系统无法开机解决方法
  • 在解决ul居中问题时想到的几点
  • etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
  • linux安全加固的内容是什么
  • javascriptz
  • 基于nodejs的框架
  • jquery删除dom
  • 股权转让是实缴资本吗
  • 车辆保险开增值税吗
  • 税务师事务所牌匾
  • 上海税务开户
  • 劳务派遣服务计税
  • 个体工商户如何注销
  • 发票机如何打印文件
  • 广东省广州市国资委
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设