CMD的find命令怎么用?,find 命令的 7 种用法,linux find查找当前目录下所有文件,linux操作系统利用find 命令如何查找某个目录的位置,linux find命令详解,Linux常用命令详解 | find...
CMD的find命令怎么用?
在cmd窗口中敲下find /? 这条命令,然后重重地按下回车键。find /? 的执行结果很快,帮助信息全出来了。 find命令详解 find命令的基本格式是这样的:find "要查找的字符串" 要查找的文件,在这里,"要查找的字符串"这个内容是必不可少的,引号也是必须的。例如:find "bathome" d:\test.txt,表示在D盘根目录下的文本文件test.txt中查找含有 bathome 这一字符串的所有行。 find的结果将会有两种情况: 1、当文件中包含要查找的字符串时,将返回这个字符串所在位置的整行内容,具体格式为:第一行是"---------- ×××" (×××表示被查找的文件名,不包括引号对),第二行开始才出现包含字符串的整行内容; 2、当文件中没有出现要查找的字符串时,find的结果仅仅返回"---------- ×××" 这一行内容(×××表示被查找的文件名,不包括引号对)。 在查找指定字符串的时候,有的场合需要区分大小写,有的场合则对大小写并不在意,如何实现这些需求呢? 很简单,在find的时候,添加或取消/i开关就是了,具体用法为:find /i "Abc" test.txt 表示不区分大小写,文本内容中含有 Abc、abc、ABC之类的都算;find "Abc" test.txt则严格区分字符大小写,只能匹配Abc,而不能匹配abc、ABC之类的字符。 有时候,我们的需求并不是为了查找到某个字符串,而是要检测哪些行不含有特定的字符串,这个时候,可以使用开关/v,用法为:find /v "Abc" test.txt,它表示查找那些不含字符串Abc的行(Abc要区分大小写),如果不区分abc的大小写,那么,应该写成 find /i /v "Abc" test.txt。
find 命令的 7 种用法
可以很肯定地说, find 命令是 Linux 后台开发人员必须熟知的操作之一,除非您使用的是 Windows Server。 对于技术面试,它也是一个热门话题。让我们看一道真题: 这种情况很常见,但令人惊讶的是,并非每个开发人员都能在面试中清楚地写出这个命令。 答案:首先我们需要使用 cd 命令进入对应的目录,然后,命令如下: 如果你还没有完全理解上面的命令,完全不用担心。本文将介绍 find 命令的 7 个实际用途,您最终会掌握它。如果您已经知道了,那么阅读这篇文章对您来说将是一个很好的回顾。 0. 按名称或正则表达式查找文件 让我们从最简单的用法开始。要按特定名称搜索文件,命令如下: 如何查找所有格式为 pdf 的书籍?使用正则表达式: 默认情况下,find 命令会搜索常规文件,但最好进行指定( -type f )以使所有内容更清晰: 1. 查找不同类型的文件 除了搜索常规文件外,我们还可以通过指定 -type 选项来搜索其他类型的文件。 例如目录: 或者符号链接: 2.按指定的时间戳查找文件 要按指定的时间戳搜索文件,我们需要知道 Linux 系统中的 3 个不同的时间戳: 所以,正如开头提到的面试题,要搜索 atime 超过一年的文件,我们可以编写如下命令: 如果我们需要查找 mtime 正好是 5 天前的文件,请不要包含 + ,因为它的意思是“大于”。 显然, + 表示“大于”, - 表示“小于”。所以我们可以搜索 ctime 在 5~10 天前的文件: 3. 按大小查找文件 -size 选项使我们能够按指定大小查找文件。我们可以将其计量单位指定为以下约定: 类似于按时间戳查找文件,+ 表示“大于”,- 表示“小于”。例如,要查找大小为 10 MB ~ 1 GB 的文件: 4. 按权限查找文件 合理控制文件的权限是 Linux 管理员的一项重要任务。find 命令的 -perm 选项可以帮助我们按指定权限查找文件: 例如,上面的命令会搜索所有具有 777 权限的文件,这意味着一个文件对其持有者、组和所有用户具有所有的读、写和可执行权限。 5. 按所有权查找文件 这个任务很简单。我们可以使用 -user 选项指定用户名。例如,以下命令将查找所有属于 yang 的文件: 6. 在找到文件后执行命令 在大多数情况下,我们希望在找到我们需要的文件后进行后续操作。例如将其删除,或检查它们的详细信息等等。-exec 命令使这些所有事情变得更加容易。 现在,要了解如何使用它,让我们回到之前提到的面试问题: 上述命令在 -exec 选项后是 rm -rf,其用于删除文件。{} 是用于查找结果的占位符。 注意:占位符 {} 非常重要,尤其是在您想删除文件时。因为,如果您不使用它,该命令将对所有文件执行(而不是您刚刚通过 find 命令找到的文件)。 做一个尝试,请在终端上执行以下两个命令,并检查它们的结果有何不同: 一个使用占位符: 另一个不使用: -exec 选项后面的命令必须以分号(;)结束。众所周知,转义字符用于去除单个字符的特殊含义。在 Linux 中,反斜杠 用作转义字符。所以我们将它用于分号字符。 总结 看完 find 命令的 7 种用法后,开始提到的面试题现在好像很容易解决了。你现在可以直接写下它的答案并将其解释清楚吗?
linux find查找当前目录下所有文件
1、登录Linux系统之后打开终端,确定你要找关键字的目录。 2、查看下当前目录下所有的文件,你所要找的关键字就在当前目录下某个文件里面。 3、find -type f -print这个命令可以列出当前目录下的所有文件。 4、type后面的f是file的意思,所以只列出文件,而排除文件夹。 5、接下来只要在find命令后面加上exec命令就可以实现。
linux操作系统利用find 命令如何查找某个目录的位置
1、linux命令如果记不得,可以使用man命令来查看某个命令的使用。但对应初学者往往看不懂或者不知道什么场景下使用 2、输入find -name *history,意思是查询当前目录及子目录下所有以history结尾的文件 3、输入find -name mysql*,意思是查询当前目录及子目录下所有以mysql开头的文件 4、输入find -name mysql* -o -name *history,中间加个-o表示或的意思,就是以mysql开头或history结尾的文件 5、上面是例子没有搜索目录,默认是当前目录下,可以加上目录位置来指定特地的目录下搜索 6、有时候经常会需要查询最近10分钟修改过的文件,则可以输入find -mmin -10命令来查询 7、最后介绍下,在系统磁盘不足的情况下,需要清理大的垃圾临时文件时,如搜索大于100M的文件,find -type f -size +100M -print0 | xargs -0 du -h,结果如图所示 扩展资料 Linux简介: Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。 Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。 严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。 参考资料来源:百度百科:Linux简介
linux find命令详解
find命令可将档案系统内符合 expression 的档案列出来。你可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。 find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。 扩展资料: linux的其他类似find命令详解:grep 用于查找文件中符合字符串的那行。 e.g. grep -nr "network_ssl" ./ [查找当前文件夹下所有文件内容,列出包含有 network_ssl该字串的行,并显示行号] 参数说明: -a :将 binary 文件以 text 文件的方式搜寻数据 -c :计算找到 '搜寻字符串' 的次数 -i :忽略大小写的不同,所以大小写视为相同 -n :顺便输出行号 -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行! 参考资料来源:百度百科-linux命令 参考资料来源:百度百科-find
Linux常用命令详解 | find
find 命令的基本结构如下: find 命令手册 : man find find 命令中的 -name 选项可以根据文件名称进行检索( 区分大小写 )。如需要忽略文件名中的大小写,可以使用 -iname 选项。 -name 和 -iname 两个选项都支持 wildcards 。如: 例1:查找 /usr 目录下所有文件名以 .txt 结尾的文件 例2:查找 /usr 目录下所有文件名刚好为 4 个字符的文件 例3:查以大写字母开头的文件 例4:查以两个小写字母和两个数字开头的txt文件 类似的还有: -lname -ilname -path -ipath -regx -iregx 有些时候,你需要在搜索时匹配某个文件或目录的 完整路径 ,而不仅仅是匹配文件名。可以使用 -path 或 -ipath 选项。 例1:如查找 /usr 下所有文件名以 .txt 结尾的文件或目录,且该文件的父目录必须是 src 。可以使用以下命令: 例2:在当前目录除aa之外的子目录内搜索 txt文件 例3:在当前目录,不再子目录中,查找txt文件 如果只想搜索得到文件 或 目录,即不想它们同时出现在结果中。可以使用 -type 选项指定文件类型。 -type 选项最常用的参数如下: 例:检索 /usr 下所有文件名以 python 开头的目录 find 命令支持 -empty 选项用来检索 为空 的文件或目录。空文件即文件里没有任何内容,空目录即目录中没有任何文件或子目录。 例:检索用户主目录下所有的空目录 find 命令也允许用户对当前的匹配条件进行 “反义” (类似于 逻辑非 操作)。 如需要检索 /usr 下所有文件名 不 以 .txt 为后缀的文件。可以使用以下命令: 也可以“翻转”任何其他的筛选条件,如:检索 /usr 下所有内容不为空的文件 为了检索归属于特定用户的文件或目录,可以使用 -user 选项。 例:检索根目录下所有属主为 starky 的文件 类似于 -user 选项, -group 选项则可以根据文件或目录的 属组 进行检索。 有些时候,需要根据文件创建或修改的时间进行检索。 Linux 系统中,与文件相关联的时间参数有以下三种: 与此对应的是 find 命令中的 -mtime , -atime 和 -ctime 三个选项。 这三个选项的使用遵循以下示例中的规则: 检索 /usr 下两天前被修改过的文件 如果觉得 -mtime 等选项以 天 为单位时间有点长,还可以使用 -mmin , -amin , -cmin 三个选项。 查找比 aa.txt 新 的文件 查找比 aa.txt 旧 的文件 查找比aa.txt新,比bb.txt旧的文件 -size 选项允许用户通过文件大小进行搜索(只适用于文件,目录没有大小……)。 表示文件大小的单位由以下字符组成: 另外,还可以使用 + 或 - 符号表示 大于 或 小于 当前条件。 检索文件大小高于 1 GB 的文件 find 命令可以使用 -perm 选项以文件权限为依据进行搜索。 9.1使用符号形式 例1:如需要检索 /usr 目录下权限为 rwxr-xr-x 的文件,可以使用以下命令: 例2:搜索 /usr 目录下所有权限为 r-xr-xr-x (即系统中的所有用户都只有读写权限)的文件和目录,可以使用以下命令: 很多时候,我们只想匹配文件权限的一个 子集 。比如,检索可以直接被任何用户执行的文件,即只关心文件的执行权限,而不用管其读写权限是什么。 上述的需求可以通过以下命令实现: 其中 a=x 前面的 / 符号即用来表示只匹配权限的某个子集(执行权限),而不用关心其他权限的具体设置。 9.2使用数字形式 例如:搜索 /usr 目录下权限为 644 (即 rwxr-xr-x )的文件 find 命令默认是以 递归 的方式检索项目的,这有时候会导致得到的结果数量非常巨大。可以使用 -maxdepth 限制 find 命令递归的层数。 例如:搜索时向下递归的层数最大为 3 在之前的例子中有出现多个搜索条件的 组合 以及对某个搜索条件的 反转 。 实际上 find 命令支持 “and” 和 “or” 两种逻辑运算,对应的命令选项分别是 -a 和 -o 。通过这两个选项可以对搜索条件进行更复杂的组合。 此外还可以使用 小括号 对搜索条件进行 分组 。注意 find 命令中的小括号常需要用 单引号 包裹起来。因小括号在 Shell 中有特殊的含义。 如检索 /usr 下文件名以 python 开头且类型为目录的文件 该命令等同于: 更复杂的组合形式如: 例4:在除dir0及子目录以外的目录下查找txt后缀文件 说明:-a 应该是and的缩写,意思是逻辑运算符‘与’(&&); -o应该是or的缩写,意思是逻辑运算符‘或’(||), -not 表示非. 命令行的意思是:如果目录dir0存在(即-a左边为真),则求-prune的值,-prune 返回真,‘与’逻辑表达式为真(即-path './dir0*' -a -prune 为真),find命令将在除这个目录以外的目录下查找txt后缀文件并打印出来;如果目录dir0不存在(即-a左边为假),则不求值-prune ,‘与’逻辑表达式为假,则在当前目录下查找所有txt后缀文件。 -delete 选项可以用来删除搜索到的文件和目录。 例如:删除 home 目录下所有的空目录: -exec 选项可以对搜索到的结果执行执行该参数所给出的shell命令。形式为 command {} \; ,注意{}与\;之间有空格 。每当 find 命令检索到一个符合条件的文件,会使用其完整路径取代命令中的 {} ,然后执行 -exec 后面的命令一次。 例1:如需要将 home 目录下所有的 MP3 音频文件复制到移动存储设备(假设路径是 /media/MyDrive ),可使用下面的命令: 其中的 大括号 ( {} )作为检索到的文件的 占位符 ,而分号( ; )作为命令结束的标志。因为分号是 Shell 中有特殊含义的符号,所以需要使用单引号括起来或前面加上转义符 \ 。 例2:查看当前目录下的所有普通文件,并在 - exec 选项中使用 ls -l 命令将它们列出 例3:在多个文件中检索某个指定的字符串。如在用户主目录下的所有文件中检索字符串 hello ,可以使用如下命令: 创建 Gzip 格式的压缩文件的命令为: 现在假设需要将用户主目录下所有的 MP3 文件添加到压缩包 music.tar.gz 中,直观的感觉是,其命令应为如下形式: 实际情况是,这样得到的 music.tar.gz 其实只包含一个 MP3 文件。原因是 find 命令 每次 发现一个音频文件,都会再执行一次 -exec 选项后面的压缩命令。导致先前生成的压缩包被覆盖。 可以先让 find 命令检索出所有符合条件的音频文件,再将得到的 文件列表 传递给后面的压缩命令。完整的命令如下: 如果想浏览搜索到的文件(目录)的详细信息(如权限和大小等),可以直接使用 -ls 选项。 例如:浏览所有 1G 以上大小的文件的详细信息 与exec作用相同,区别在于,在执行命令之前,都会给出提示,让用户确认是否执行 与 exec 作用相同 ,起承接作用。区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等 例1:查找以ap或may开头的文件 例2:查硬连接数大于2的文件或目录 例3:查找含特定字符串的文件。查找当前目录下含有"the string you want find…"字符串的文件: 例4:从根目录开始查tmpfile,一旦查到马上删除 例5:如何用find查找某一天更改的文件?可以使用这一行命令来实现: A Guide to the Linux “Find” Command https://www.cnblogs.com/wanqieddy/archive/2011/06/09/2076785.html https://blog.csdn.net/l_liangkk/article/details/81294260 https://blog.csdn.net/hetoto/article/details/84101745 http://c.biancheng.net/view/779.html http://blog.chinaunix.net/uid-24648486-id-2998767 https://www.runoob.com/linux/linux-comm-find.html https://www.jb51.net/article/147275.htm
下一篇:没有了