Linux命令:find命令详解

find命令格式

find path -option [-print] [-exec -ok |xargs |grep] [command {} \;]# 参数说明path: find命令所查找的目录路径。~ 表示$HOME目录;.来表示当前目录;/来表示系统根目录。-print: find命令将匹配的文件输出到标准输出。-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为command {} ;,注意{};之间的空格。-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。|xargs: 与exec作用相同 ,起承接作用,区别在于|xargs 主要用于承接删除操作 ,而-exec都可用 如复制、移动、重命名等。options: 表示查找方式

find命令参数

path :要查找的目录路径。

  • ~ 表示$HOME目录
  • . 表示当前目录
  • / 表示根目录

print :表示将结果输出到标准输出。

exec :对匹配的文件执行该参数所给出的shell命令。

  • 相应命令的形式为command {} ;,注意{}和;之间的空格。

ok :与exec作用相同,区别在于,在执行命令之前,都会给出提示,让用户确认是否执行。

|xargs :与exec作用相同 ,起承接作用,区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等。

options :表示查找方式。

options常用选项:

-name filename        #查找名为filename的文件
-perm                 #按执行权限来查找
-user username        #按文件属主来查找
-group groupname      #按组来查找
-mtime -n +n          #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n          #按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-ctime -n +n          #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup              #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser               #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-type b/d/c/p/l/f     #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c]            #查长度为n块[或n字节]的文件
-mount                #查文件时不跨越文件系统mount点
-follow               #如果遇到符号链接文件,就跟踪链接所指的文件
-prune                #忽略某个目录

下面通过一些简单的例子来介绍下find的常规用法:

1、按名字查找

	# 在当前目录及子目录中,查找大写字母开头的txt文件 $ find . -name '[A-Z]*.txt' -print   # 在/etc及其子目录中,查找host开头的文件 $ find /etc -name 'host*' -print   # 在$HOME目录及其子目录中,查找所有文件   $ find ~ -name '*' -print # 在当前目录及子目录中,查找不是out开头的txt文件   $ find . -name "out*" -prune -o -name "*.txt" -print 

2、按目录查找

	# 在当前目录除aa之外的子目录内搜索 txt文件   $ find . -path "./aa" -prune -o -name "*.txt" -print   # 在当前目录及除aa和bb之外的子目录中查找txt文件   $ find . −path′./dir0′−o−path′./dir1′−path′./dir0′−o−path′./dir1′ -a -prune -o -name '*.txt' -print# 在当前目录,不再子目录中,查找txt文件 $ find . ! -name "." -type d -prune -o -type f -name "*.txt" -print # 或者$ find . -name *.txt -type f -print

3、按权限查找

	# 在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件   $ find . -perm 755 -print # 查找用户有写权限或者组用户有写权限的文件或目录$ find ./ -perm /220$ find ./ -perm /u+w,g+w$ find ./ -perm /u=w,g=w

4、按类型查找

	# 在当前目录及子目录下,查找符号链接文件   $ find . -type l -print

5、按属主及属组

	# 查找属主是www的文件   $ find / -user www -type f -print   # 查找属主被删除的文件 $ find / -nouser -type f -print   # 查找属组 mysql 的文件 $ find / -group mysql -type f -print   # 查找用户组被删掉的文件 $ find / -nogroup -type f -print 

6、按时间查找

	# 查找2天内被更改过的文件 $ find . -mtime -2 -type f -print   # 查找2天前被更改过的文件 $ find . -mtime +2 -type f -print   # 查找一天内被访问的文件 $ find . -atime -1 -type f -print   # 查找一天前被访问的文件 $ find . -atime +1 -type f -print   # 查找一天内状态被改变的文件 $ find . -ctime -1 -type f -print   # 查找一天前状态被改变的文件 $ find . -ctime +1 -type f -print   # 查找10分钟以前状态被改变的文件 $ find . -cmin +10 -type f -print

7、按文件新旧查找

	# 查找比 aa.txt 新的文件 $ find . -newer "aa.txt" -type f -print   # 查找比 aa.txt 旧的文件 $ find . ! -newer "aa.txt" -type f -print   # 查找比aa.txt新,比bb.txt旧的文件 $ find . -newer 'aa.txt' ! -newer 'bb.txt' -type f -print

8、按大小查找

	# 查找超过1M的文件 $ find / -size +1M -type f -print   # 查找等于6字节的文件 $ find . -size 6c -print   # 查找小于32k的文件 $ find . -size -32k -print

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

boost::interprocess::named_mutex的翻译和学习

官方地址 named_mutex 简介 // In header: <boost/interprocess/sync/named_mutex.hpp>class named_mutex { public:// construct/copy/destruct 构建/复制/销毁named_mutex(create_only_t, const char *, const permissions & permissions());named_mutex(open_o…

安卓牛客专项练习2020.12.31

1.窗口dialog或半透明 2.Pracelable性能比serializable高

MAC查找JDK的路径

在控制台中输入&#xff1a; /usr/libexec/java_home -V输出如下结果&#xff1a; Matching Java Virtual Machines (4):1.8.0_121, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home1.7.0_79, x86_64: "Java SE 7&quo…

sqliteorm的sync_schema介绍

迁移功能 在迁移过程中&#xff0c;没有明确的上下函数。取而代之的是sqlite_orm提供的sync_schema函数&#xff0c;它负责将实际的db文件模式和你在make_storage调用中指定的模式进行比较&#xff0c;如果有什么不一样&#xff0c;它就会改变或放弃/创建模式。 storage.sync_…

安卓系统体系架构

1.大体:共有四层&#xff0c;系统应用层&#xff0c;JAVA API层&#xff0c;安卓系统运行层&#xff0c;Linux内核层 具体: 系统应用层&#xff08;System Apps&#xff09; Java API 框架层&#xff08;Java API Framework&#xff09; Android系统运行层&#xff08;包括Andr…

Java命令:jstack — 获取线程dump信息

目录一、命令介绍二、使用实例实例一&#xff1a;jstack查看输出实例二&#xff1a;jstack统计线程数实例三&#xff1a;jstack检测死锁实例四&#xff1a;jstack检测CPU高一、命令介绍 Usage:jstack [-l] <pid>(to connect to running process) //连接活动线程jstack …

Java多线程死锁例子

目录一、产生死锁的原因二、如何避免死锁一、产生死锁的原因 发生死锁的情况&#xff1a; 多个线程需要同时占用多个共享资源而发生需要互相死循环等待的情况&#xff0c;就是&#xff0c;两个线程互相等待着对象释放锁&#xff0c;一直这样僵持下去&#xff0c;所以导致了死锁…

C++中lock_guard的学习

lock_guard 锁守卫是一个管理mutex对象的对象&#xff0c;使其始终处于锁定状态。在构造时&#xff0c;mutex对象被调用线程锁定&#xff0c;在销毁时&#xff0c;mutex被解锁。这是最简单的锁&#xff0c;作为一个自动持续时间的对象&#xff0c;它的作用特别大&#xff0c;可…

安卓四大组件简介

安卓四大组件 Activity活动&#xff0c;Service服务&#xff0c;BroadcastRecevicer广播接受器&#xff0c;Content Provider内容提供者 Activity活动 所有程序的流程都运行在activity中 Service服务 只能后台运行&#xff0c;没有界面的长生命周期的代码 BroadcastRece…

WebLogic域的创建与发布

目录一、前言二、准备三、创建域步骤第一步&#xff1a;直接【回车】第二步&#xff1a;直接【回车】第三步&#xff1a;直接【回车】第四步&#xff1a;输入域名称后【回车】第五步&#xff1a;直接【回车】第六步&#xff1a;直接【回车】&#xff08;此步骤是提示域的存放目…

安卓安卓移动操作系统优缺点

安卓移动操作系统优缺点 开发性 丰富的硬件 方便开发 gogle应用 安卓模拟器 手机,手表,电视,车载,安卓cel LogCat的使用–5级(日志) Log.v()–verbose全部信息,黑色 Log.d()–debug调试信息,蓝色 Log.i()–info一般信息,绿色 Log.w()–warning警告信息,橙色 Log.e()–erro…

WebLogic启动失败:java.lang.AssertionError: Could not obtain the localhost address.

目录一、错误信息二、解决方案第一步&#xff1a;查看本机计算机名称第二步&#xff1a;编辑hosts文件一、错误信息 linux下启动WebLogic报如下错误&#xff1a; 二、解决方案 此错误多半是hosts文件不对导致的。 解决步骤如下&#xff1a; 第一步&#xff1a;查看本机计…

sqlite_orm sync_schema源码即翻译

源码 /*** This is a cute function used to replace migration up/down functionality.* It performs check storage schema with actual db schema and:* * if there are excess tables exist in db they are ignored (not dropped)* * every table from storage is comp…

安卓布局UI简介

安卓UI 用户界面UI&#xff08;使用者界面&#xff09; ——系统和用户之间进行交互和信息交换的媒体 由布局和组件组成 软件设计&#xff1a;编码设计和UI设计 布局 ——可定义应用中的界面结构 所有元素都使用View和Viewgroup对象的层次结构进行构建 view微件——构建用户…

Windows查找JDK的路径

第一步&#xff1a;确定是否安装JDK 在控制台输入&#xff1a; java -version输出结果&#xff1a; 此时说明你电脑安装了JDK。 第二步&#xff1a;查找路径 然后在控制台输入&#xff1a; java -verbose输出结果&#xff1a; 从最后的jre目录可以找到相应的jdk目录。 …

boost官方文档同步机制Synchronization mechanisms overview

参考链接 官方文档 Synchronization mechanisms overview Named And Anonymous Synchronization MechanismsTypes Of Synchronization Mechanisms如前所述&#xff0c;如果不能有效地同步对内存的访问&#xff0c;那么通过内存映射文件或共享内存对象在进程之间共享内存的能力…

安卓布局中xml文件属性和ID简介

编写xml属性 加载xml资源 当编译应用时&#xff0c;系统会将每个xml文件编译为view资源 属性 xml属性&#xff1a;特有属性&#xff0c;共有属性&#xff0c;其他属性&#xff08;布局参数&#xff09; ID ——在结构树中对view对象唯一标识 编译应用后&#xff0c;系统以…

Java监控工具VisualVM

目录一、简介二、内存分析1、Heap堆三、CPU分析四、线程分析一、简介 VisualVM 是一款免费的&#xff0c;集成了多个JDK命令行工具的可视化工具&#xff0c;它能为您提供强大的分析能力&#xff0c;对Java应用程序做 性能分析和调优 。这些功能包括 生成和分析海量数据、跟踪内…

对官方Mutexes的翻译

参考链接 参考链接 Mutexes Whats A Mutex?Mutex OperationsBoost.Interprocess Mutex Types And HeadersScoped lockAnonymous mutex exampleNamed mutex example Whats A Mutex? 互斥是相互排斥的意思&#xff0c;它是进程之间最基本的同步形式。互斥保证只有一个线程可…

计算机应用基础

计算概论知识点 1.计算机之父&#xff1a;冯.诺伊曼 计算机基本组成&#xff1a;运算器&#xff0c;控制器&#xff0c;存储器&#xff0c;输入设备&#xff0c;输出设备 2.几种计算机&#xff1a;台式计算机,笔记本式计算机,PC服务器,平板式计算机… 3.电脑的硬件&#xff1a;…