Linux常用命令使用办法,linux常用命令

find是Linux下最佳的通令之一,其询问成效十二分有力。以下将详细介绍find的好些个用法:

Linux常用命令使用格局


工作方法:其沿着文件层次结构向下遍历,匹配符合条件的文本,并奉行相应的操作。

【find】

格式:find <钦命目录> <钦赐条件> <内定动作>
 ‘>

1、依照文件属性查找:

-name 依据文件名查找 -iname 依据文件名查找,但是不区分轻重缓急写 -prune
不在当前线指挥部定的目录中找寻 -depth
在查找文件时,首先查找当前目录中的文件,然后再在其子目录中追寻
 ‘>
身体力行:删除home目录及子目录下以txt为后缀的文书:

        ‘> find /home -depth -name “*.txt” -delete
 ‘>

2、依据文件类型来查找文件: -type [搜索某一类别的文本 ]

文件类型:

  1. f 普通文书
  2. d 目录
  3. l 符号链接文件
  4. c 字符设备文件
  5. p 管道文件
  6. b 块设备文件
  7. s socket文件

  ‘>
身体力行:查找home目录下的平日文书:
        ‘> find /home -type f
 ‘>

3、与管道共用

【-print0 和 xargs -0 详细表达请点击这里】

除去当前目录及子目录下以【.o】为后缀的文件
find ./ -depth -iname ‘*.o’ -print0 | xargs -0 rm
删去当前目录及子目录下以【.o】和【.txt】为后缀的文本
find ./ \( -iname “*.o” -o -iname “*.txt” \) -print0 | xargs -0 rm

Linux常用命令使用方法 【find】 格式:find 钦定目录 钦命条件 内定动作
1、根据文件属性查找: -nam…

1.打字与印刷文件和目录列表
$find . -print  #打字与印刷文件和目录列表

当使用-print时,’\n’作为用来分隔文件的定界符。
-print0指明使用’\0’作为定界符来打字与印刷相配的每一个文本名。此措施对于文本名中满含’\n’是可怜有效。
但在CentOS上经实际测量检验,find直接彰显匹配到的文书,无需加上-print选项。
2.依据文件名或正则表明式相配寻找
选用-name钦赐了文件名所必需配皮的字符串.

$find . -name “*.txt” -print  # 打字与印刷以.txt结尾的文件
$find . -iname “*.txt” -print    #-iname表示特出的文书名大要大小写
3.准绳限制,匹配多少个尺码中的多少个
-a:表示且
-o:表示或
-not:表示非

$find . \( -name “*.txt” -o -name “*.pdf” \) -print 
#打印当前目录下以.txt或.pdf结尾的文书
$find . \( -name “*.txt” -a -name “a*” \) -print 
#打字与印刷当前目录下以a初阶且以.txt结尾的文书
$find . -not \( -name “*.txt” -a -name “a*” \) -print 
#打印当前目录下不以a初步或不以.txt结尾的公文
$find . -not \( -name “*.txt” -o -name “a*” \) -print 
#打字与印刷当前目录下不以a开首qie不以.txt结尾的文书
-not用法源于德摩尔根定律

-path:此参数用于将文件路线作为贰个完完全全进行相称。

$find /home/user -path “*sh” -print
  /home/user/bin/1.sh
  /home/user/bash
-regex :此参数与-path类似,只可是其是依照正则表达式来同盟文件路线的。
$find . -regex “.*\( \.py \| \.sh \)$”
4.否认参数
find也足以用“!”作为否认参数。

$find . ! -name “.txt” -print 
#协作全部不以.txt结尾的文件</code></pre>
5.基于目录的吃水寻觅
find命令在用时会遍历全数的子目录,大家能够选择局地参数来限制其遍历的深度。

-maxdepth:最大深度限制,1意味着只在当前目录,2意味向下两级。。。。。。
$find . -maxdepth 1 -type f -print    #只列出当前目录下的有所普通文书
-mindepth:最小深度限制,与地点用法相似。
$find . -mindepth 2 -type f -print   
#列出距当前目录至少四个子目录的持有文件
6.依照文件类型搜索
linux下的文件类型
文件类型            类型参数
一般文书              f
标识文件              l
目录                    d
字符设备              c
块设备                  b
套接字                  s
Fifo(管道文件)  p

$find , -type f -print
$find . -type d -print
7.基于文件时间展开查找
linux文件系统中的每一个文件都有三种时光戳:
访问时间(atime——access time):正是上次拜候这么些文件的日子。
更改时间(ctime——change
time):就是文本的inode更换的时刻(什么是inode?)当您往贰个文书中添增添少依旧去除数据的时候,修改文件全数者的时候,链接退换的时候,文件的ctime就能发生转移。
修改时间(mtime——modification
time):正是文件的剧情上一回发出更改的时候的岁月。
-atime,-ctime,-mtime可作为find的时光参数。单位是天,那么些值一般还隐含+或-:+表示大于,-表示小于。

$find . -type f -atime -7 -print  #打字与印刷7天内被访谈的文书
$find . -type f -atime  7 -print  #打字与印刷恰幸亏7天前被访问的文本
$find . -type f -atime +7 -print  #打字与印刷当先7天没被访谈的公文
地点的时光都以遵照“天”,还只怕有基于“分钟”的。
-amin
-mmin
-cmin
用法与上相似,再一次就不如如了。
find的另二个美丽的特征是-newer参数,大家得以内定多个用以比较时间戳的参阅文件,然后找寻比参照文件更新的有所文件。

$find . -type f -newer file.txt -print
8.基于文件大小的搜寻

网站地图xml地图