精华内容
下载资源
问答
  • 导读 在本指南中,我们将介绍如何在 Linux 系统上显示当前工作目录或任何目录及其子目录中的文件数量,以及 wc 命令,它会打印每个文件或...-type - 指定要搜索的文件类型,在上面的情况下,f 表示查找所有常规文件
    导读 在本指南中,我们将介绍如何在 Linux 系统上显示当前工作目录或任何目录及其子目录中的文件数量,以及 wc 命令,它会打印每个文件或来自标准输入的换行符、单词和字节计数。

    我们将使用 find 命令,它用于搜索目录层次结构中的文件,以下是我们在 find 命令中使用的选项,如下所示:

    -type - 指定要搜索的文件类型,在上面的情况下,f 表示查找所有常规文件。
    
    -print - 打印文件绝对路径。
    

    以下是我们 wc 命令中使用的选项,如下所示:

    -l - 此选项打印换行符的总数,也即由 find 命令输出的绝对文件路径总数。

    find 命令的一般语法
    # find . -type f -print | wc -l
    
    $ sudo find . -type f -print | wc -l
    

    PS:使用 sudo 命令来读取指定目录中的所有文件,包括具有超级用户权限的子目录中的文件,以避免 “Permission denied” 错误,如下截图所示:
    用find命令巧查目录下文件的个数用find命令巧查目录下文件的个数
    Find Number of Files in Linux

    Linux 中的文件数量

    你可以看到,在上面的第一个命令中,find 命令没有读取当前工作目录中的所有文件。

    下面是更多的示例,分别显示 /var/log 和 /etc 目录中的常规文件总数:

    $ sudo find /var/log/ -type f -print | wc -l
    
    $ sudo find /etc/ -type f -print | wc -l

    本文原创地址:http://www.linuxprobe.com/find-count-file.html

    免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/thread

    展开全文
  • find是最常见和最强大的查找命令,你可以它找到任何你想找的文件find 命令会在硬盘进行检索,速度较慢。 find的使用格式如下: find <指定目录> <指定条件> <指定动作> 2. locate ...

    1.find

    find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。find 命令会在硬盘进行检索,速度较慢。

    • find的使用格式如下:

    find <指定目录> <指定条件> <指定动作>

    2. locate

    • locate命令其实是"find -name"的另一种写法,但是要比后者快得多。
    • 它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息,有点像数据库中的索引。Linux系统自动创建这个数据库,并且每天自动更新一次(updatedb),所以使用locate命令有可能会搜寻到已经删除的文件或者查不到最近创建的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

    3. whereis

    whereis命令只能用于可运行文件的搜索,只能查到一些特定文件,而且whereis和locate运行机制一样,也是从数据库中查找(/var/lib/locatedb)。

    • -b:只查找binary文件
    • -m:只找在说明文件manual路径下的文件
    • -s:只找source来源文件
    • -u:没有说明档的文件
    • whereis命令的使用实例:

    whereis grep

    4. which

    which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

    • which命令的使用实例:

    which grep

    展开全文
  • 指定目录内的所有.out文件 cp 到/tmp 目录: find /home/pirate/ -name "*.out" -exec cp {} /tmp/ \;...如何用xargs来实现呢,用下面这个命令是不行的 : find /home/pirate/ -name "*.out" -type f...

     

    将指定目录内的所有.out文件 cp 到/tmp 目录:

    find /home/pirate/ -name "*.out" -exec cp {} /tmp/ \;

    其中,{} 表示当前find查找出来的文件名, ;是exec的结束符并用\转义

     

    如何用xargs来实现呢,用下面这个命令是不行的 :

    find /home/pirate/ -name "*.out" -type f |xargs cp /tmp/ 

    echo 一下就会发现这条语句的执行实际上是:

    find /home/pirate/ -name "*.out" -type f |xargs echo cp /tmp/

    cp /tmp/ /home/pirate/a.out

    也就是说他把/tmp/ 当作拷贝参数,而不是拷贝的目标

     

    正确的命令如下:

    find /home/pirate/ -name "*.out" -type f |xargs -I {} cp {} /tmp/  

    或者:

    find /home/pirate/ -name "*.out" -type f |xargs -i cp {} /tmp/  

    加 -i 参数直接用 {}就能代替管道之前的标准输出的内容。
    加 -I 参数 需要事先指定替换字符
     
    exec 和 xargs的区别:
    exec 参数是一个一个传递的,每找到一个结果都会forck一个进程来执行,比如find总共找到了10个结果,exec会执行10次
    xargs 一次性的将所有参数传给命令,比如find找到了10个结果,xargs将这是个结果组合到一起执行cp操作,但是使用xargs的前提是命令支持多个参数
    exec 每处理一个文件或者目录,它都需要启动一次命令,效率不好; 
    exec 格式麻烦,必须用 {} 做文件的代位符,必须用 \; 作为命令的结束符,书写不便。
    xargs 不能操作文件名有空格的文件;
     

    1、压缩所有的日志文件到每一个文件
    find ./ -type f -name "*.log" | xargs -i -t tar -zcvf {}.tar.gz {}
    2、压缩所有的图片文件到一个文件
    find ./ -name *.jpg -type f -print | xargs tar -zcvf images.tar.gz
    3、文件内容替换
    find ./ -maxdepth 2 -name a -print | xargs -t -i sed -i '1 i\111' '{}'
    4、权限修改
    find ./ -perm -7 -print | xargs chmod o-w
    5、查看文件类型
    find ./ -type f -print | xargs file
    6、删除多个文件
    find ./ -name "*.log" -print0 | xargs -i -0 rm -f {}
    7、复制多个文件
    find ./ -type f -name "*.txt" | xargs -i cp {} /tmp/
    find ./ -type f -name "*.txt" | xargs -I {} cp {} /tmp/

    xargs -t 意思是先打印命令,然后再执行

     

     

     

    转载于:https://www.cnblogs.com/yangwenhai/p/4884605.html

    展开全文
  • 名企高频考点之-Linux命令之find 0. 概述 在我们面试各大公司的时候,关于Linux往往最容易问到的问题之一就是...如何指定的目录下查找文件 find命令的常用命令行参数都有哪些 1.Linux命令之find 1.1.简述 find命令用

    名企高频考点之-Linux命令之find

    0. 概述

    在我们面试各大公司的时候,关于Linux往往最容易问到的问题之一就是Linux指令,而其中,能够使用命令快速的查找的文件已经成为了使用Linux系统的必备技能了,所以,面试官往往通过对于该命令的考察,获取应聘者对Linux环境是否熟悉。我们结合海量面经,提取出最容易被问到的Linux当中查找文件的命令以及命令行参数,供大家参考

    • 如何在指定的目录下查找文件
    • find命令的常用命令行参数都有哪些

    1.Linux命令之find

    1.1.简述

    find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示

    1.2 高频选项
    -name filename : 文件名称符合 filename 的文件 , 大小写敏感
    -iname filname : 文件名称符合 name 的文件,忽略大小写
    -empty : 空文件
    -size:指定文件大小
    
    1.3 find [path] -name [filename] 命令
    [Ann@localhost findtest]$ find ~ -name Linux 
    /home/Ann/work/findtest/Linux
    

    find:find命令使用之起手式:

    • ~:在当前用户的家目录下进行搜索,也可以传入不同的目录

    • -name:find命令之-name命令行参数

    • Linux:带查找的文件名称

    • /home/Ann/work/findtest/Linux:查找到在当前Ann用户家目录下存在的Linux文件

    1.4 find [path] -iname [filename] 命令
    [Ann@localhost findtest]$ find ~ -iname linux
    /home/Ann/work/findtest/Linux
    /home/Ann/work/findtest/linux
    
    • -iname:find命令之-iname命令行参数,iname在使用的时候,对大小写不敏感,所以我们使用find命令的时候就搜出出来一下两个文件

    • /home/Ann/work/findtest/Linux:‘L’字符大写的Linux文件

    • /home/Ann/work/findtest/linux:‘l’字符小写的linux文件

    1.5 find [path] -empty命令

    查找当前目录下的空文件

    [Ann@localhost findtest]$ find . -empty 
    ./linux
    
    • . :当前目录

    • -empty:find命令之-empty命令行参数,使用该命令会罗列出指定目录以及子目录下的所有的空文件

    为了更好的使用find命令,我们需要在了解一下ls or ll命令。

    ll:ls -l命令的缩写,查看当前目录下文件或者文件夹的属性

    [Ann@localhost findtest]$ ll
    total 4
    -rw-rw-r--. 1 Ann Ann  0 Apr 10 23:11 linux
    -rw-rw-r--. 1 Ann Ann 21 Apr 10 23:12 Linux
    
    • -rw-rw-r--:第一个’-'代表普通文件, 后面“rw-rw-r--”代表文件权限,该文件权限为对于当前Ann用户而言可读可写不可执行,对于Ann用户组而言可读可写不可执行,对于其他用户而言可读不可写不可执行

    • 1 :文件链接数

    • Ann:文件所属用户

    • Ann:文件所属用户组

    • 0或者21:文件大小,单位字节

    • Apr 10 23:11:文件创建时间

    • linux或者Linux:文件名称

    1.6 find [path] -size [filesize]命令
    1.6.1 find之查找指定文件大小

    find [path] -size [fileszie] : 查找定长的文件

    [Ann@localhost testfind]$ find . -size 5k
    ./findtest
    [Ann@localhost testfind]$ ll
    -rw-rw-r--. 1 wudu wudu 5060 Apr 14 23:51 findtest
    

    -size 5k:查找文件大小为5k的文件

    1.6.2 find之查找区间文件大小

    find [path] -size +[filesize1] -[filesize2] :查找大于filesize1的文件并且小于filesize2的文件

    [Ann@localhost testfind]$ find . -size +2k -size -6k
    ./findtest
    [Ann@localhost testfind]$ ll
    -rw-rw-r--. 1 Ann Ann 5060 Apr 14 23:51 findtest
    

    -size +2k:文件大小大于2k,+ 代表大于

    -size -6k:文件大小小于6k,- 代表小于

    合起来就是查找大于2k而小于6k的文件

    1.7 总结
    • find [path] -name [filename]:在path目录下查找文件名成为filename的文件,大小写敏感
    • find [path] -iname [filename]:在path目录下查找文件名成为filename的文件,大小写不敏感
    • find [path] -empty:在path目录下查找文件大小为空的文件
    • find [path] -size [fileszie] : 查找定长的文件
    • find [path] -size +[filesize]:查找大于filesize的文件
    • find [path] -size -[filesize] :查找小于filesize的文件
    • find [path] -size +[filesize1] -size -[filesize2] :查找大于filesize1的文件并且小于filesize2的文件

    在这里插入图片描述

    以上就是我们在面试中被问到,如何使用find命令查找文件时,老铁们的回答的参考喽!大家可以使用自己的Linux机器自行练习哦

    展开全文
  • 在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。 2.@ 命令 表示不显示@后面的命令,在入侵过程中(例如使用...
  • linux中搜索文件指定...如何用grep在本目录及其所有的子目录下的文件里面查找字符串abc? grep -R abc * 要找隐藏文件,可以: grep -R abc * .* find . -name "*.*"|xargs -w g
  • shell编程和unix命令

    2015-02-16 15:41:39
    2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改时间查找文件 17 2.1.7 ...
  • 入门学习Linux常用必会60个命令实例详解doc/txt

    千次下载 热门讨论 2011-06-09 00:08:45
    文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、...
  • linux中搜索指定字符串的方法

    千次阅读 2012-04-16 18:57:35
    linux中搜索文件指定字符串的方法: linux系统下查找目录中文件指定的...如何用grep在本目录及其所有的子目录下的文件里面查找字符串abc? grep -R abc * 要找隐藏文件,可以: grep -R abc * .* find . -name "*
  • 前言:以下相关内容多为图片,参考链接、附上少量文字解释,以便整理脉络,以...find命令是根据文件的属性进行查找 find -name '#' // 从当前目录递归查找 find / -name '#' // 从根目录递归查找,也可以指定目录查找
  • python进阶之Linux_day02

    2019-07-31 22:11:26
    py_lv2_day02 2.1.学习目标 如何文件常见快捷方式、如何进行文件的搜索(2.2-2.5) ...能够使用 find 查找指定名称的文件 压缩和解压(2.6-2.7) 能够使用归档管理tar命令归档、解档文件 能够使用gre...
  • 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新...
  • 如果未指定文件系统,将使用现有的文件系统格式。  Map  显示驱动器号与物理设备名称的映射。该信息在运行 fixboot 和 fixmbr 命令时非常有用。  map 命令仅在使用故障恢复控制台时才可用。  Map [ arc]  ...
  • 实务6 如何找到Oracle安装时生成的日志文件 实务7 安装Oracle时,是否需要安装JDK 实务8 解压安装文件时,报告无权限 实务 实务9 安装Oracle软件并创建完数据库后,服务内的ORACLESID显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 关於通讯的指令.........................................................................................................21 十. 编译器( Compiler ).......................................................
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • 实务6 如何找到oracle安装时生成的日志文件 实务7 安装oracle时,是否需要安装jdk 实务8 解压安装文件时,报告无权限 实务 实务9 安装oracle软件并创建完数据库后,服务内的oraclesid显示 实务9 “启动”而不是...
  • Wireshark使用教程.rar

    2019-07-09 08:59:14
    7.5.2. 如何用Wireshark合并包 69 7.6. 名称解析 70 7.6.1. 名字解析的流弊 70 7.6.2. 以太网名字解析(mac层) 70 7.6.3. IP地址解析(网络层) 70 7.6.4. IPX名称解析(网络层) 71 7.6.5. TCP/UDP端口名解析(传输...
  • 运行lslpp -f 命令, 查看指定文件集中包含的文件: #lslpp -f bos.acct //出于AIX系统安全考虑, 需要使某些用户只能在控制台登录使用,而不允许远程登陆使用. 更改/etc/security/user 文件中需要限制的用户的rlogin...
  • 23.3.5 find命令 23.3.6 secure程序 23.3.7 ncheck命令 23.3.8 安装和拆卸文件系统 23.3.9 系统目录和文件 23.4 作为root运行的程序 23.4.1 启动系统 23.4.2 init进程 23.4.3 进入多用户 23.4.4 shutdown命令 23.4.5...
  • 15.2.5 在ext2 文件系统中查找文件 125 15.2.6 改变ext2 文件系统中文件 的大小 126 15.3 VFS 127 15.3.1 VFS 超级块 128 15.3.2 VFS 索引节点 129 15.3.3 登记文件系统 129 15.3.4 挂接文件系统 130 15.3.5 在VFS...
  • C#全能速查宝典

    热门讨论 2014-04-26 16:16:27
    2.2.11 Find方法——搜索指定的项目 158 2.2.12 FindString方法——搜索文本 160 2.2.13 Label控件——标签控件 161 2.2.14 LabelEdit属性——允许用户编辑控件数据 163 2.2.15 LinkLabel控件——以超链接形式显示...
  • 代码语法错误分析工具pclint8.0

    热门讨论 2010-06-29 07:00:09
    和前面第一步中的方法基本一样,不过这里我们需要用到unix中的find命令查找当前目录下的C和C++文件,然后再将它们送给lint程序处理,所以得先从http://www.weihenstephan.de/~syring/win32/UnxUtils.zip下载...
  • VBA常用技巧

    2014-12-21 16:39:28
    技巧167 查找指定工作簿是否打开 12 技巧168 取得应用程序的安装路径 12 技巧169 数组的使用 12 169-1 代码运行时创建数组 12 169-2 文本转换为数组 12 169-3 使用动态数组去除重复值 12 第10章 文件操作 12 技巧170...
  • VBA编程技巧大全

    2013-08-05 09:03:19
    技巧167 查找指定工作簿是否打开 404 技巧168 取得应用程序的安装路径 404 技巧169 数组的使用 406 169-1 代码运行时创建数组 406 169-2 文本转换为数组 407 169-3 使用动态数组去除重复值 409 第10章 文件操作 412 ...
  • 1.3.5 给定一个整数数组和一个整数,返回两个数组的索引,这两个索引指向的数字的加和等于指定的整数。需要最优的算法,分析算法的空间和时间复杂度 1.3.6 假如给你一个新产品,你将从哪些方面来保障它的质量? ...
  • 英特尔面试专项准备

    2020-12-09 13:46:46
    他说如何用一个命令来实现,我说用find / -type f >filelist即可。 </li><li> 驱动&内核模块做过吗?我简单介绍了我曾经做过的截取进程访问地址的内核模块。感觉比较满意就再问如何安装一个内核...

空空如也

空空如也

1 2 3
收藏数 43
精华内容 17
关键字:

如何用find命令查找指定文件