强大的find命令在linux中是用来在指定目录下查找文件的,对于find命令来说任何位于参数之前的字符串都将被视为将要被查找的目录名,而如果使用该命令时,不设置任何参数,则find命令将默认在当前目录下查找子目录与文件,并且将查找到的子目录和文件全部进行显示。
一、find 命令格式 (即语法)
1、find命令的一般形式为:
# find 查找路径名 -options [-print -exec -ok ...]
*查找路径名:指定具体的目标路径,不指定默认为当前目录。
*options(查找条件):指定的查找标准,可以为文件名、大小、类型、权限等标准,默认为找出指定路径下的文件
*处理动作:对符合的文件做操作,默认打印输出至屏幕。
例如:请在当前目录下查找以“.txt”结尾的文件,操作如下:
在指定了路径"/app"的情况下,find命令就可以把查询到的结果“help.txt”打印到屏幕。
2、find命令的参数:
# pathname: 在find命令所查找的目录路径中,可以用.来表示当前目录,用/来表示系统根目录。
find命令不仅可以用绝对路径进行查找,同时也可以用相对路径进行查找,那么在“/app”下查找以“.txt”结尾的文件,我们也可以用相对路径来做,操作如下:
注意:其中“.”代表当前,而不输入路径则默认为当前。
# -exec: find命令对匹配的文件执行该参数所给出的shell命令时,相应命令的形式为"command { } \; ",这里要注意"{ }"和“\;”之间的空格。
# -ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
二、find命令工作特点
1、 优点:
#实时查找
#精确查找,搜索整个目录下所有文件
#可以对查询到的文件惊喜指定动作,即查看、删除、移动等等。
2、缺点:
#查找速度太慢
三、find命令的使用
我们可以把查询条件想象的分为两类,即选项和测试条件
1、find命令选项
#指定目录的查找范围
* -mindepth N 最小搜索深度
*-maxdepth N 最大搜索深
*-mindepth N -maxdepth N 只搜索指定深度
举例说明一下,我们都知道find命令是默认递归,如果我们不指定深度的话,它会默认把包含查找条件的所有子文件中也列出,比如:
用户也可以指定多个文件和目录作为参数,ls则会列出所有指定的文件和目录中的文件名。第一种,是第一个参数指定原始文件,第二个参数指定链接文件;第二种,指定多于两个选项,应该先是多个原始文件(或目录),最后指定一个目录linux命令,所有原始文件(或目录)的链接将会被创建于最后指定的目录里。在Windows 9x操作系统的电脑中可以找到.sys 文件,这些文件一般放在C:\Windows目录中。
年平均气温7.0°C(44.6°F),1月最低,平均温度为-5.6°C(21.9°F),7月最高,平均温度为19.5°C(67.1°F)。风速:
第1组:+0.1 m/s、第2组:-0.4 m/s、第3组:+0.3 m/s、第4组:-1.3 m/s、第5组:-0.1 m/s、
第6组:-0.1 m/s、第7组:-0.7 m/s、第8组:+1.1 m/s、第9组:+1.4 m/s、第10组:-0.9 m/s。在二十进制中,使用20个数码;大于9小于19的数码,一般借鉴计算机中十六进制的表示法,使用字母“A-J”;即为「0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、G、H、I、J」。