linux技能点三 find grep
find: 1. 按文件名查找 find . -name "a*.txt" 注意双引号;
2. 按文件大小查找 find .-size [+/-]n[bcwkKG] +/-表示大于或小于多少,n代表数值,bcek表示单位。
3. 按时间先后来查找 find . -amin n : 访问时间(分钟) ;
find . -atime n : 访问时间(天);
find . -mmin n :内容修改时间(分钟)
find . -mtime n :内容修改时间(天)
find . -cmin n :属性变更时间 (分钟)
find . -ctime n :属性变更时间(天)
例子:find . -mmin 34, 第34分钟这一分钟时间段内修改的,
find . -mmin -34 最近34分钟以内修改的
find . -mmin +34 34分钟以前修改的
例子: find . -mtime -1 前24小时以内修改的
find . -mtime 1 前24-48小时期间修改的
find . -mtime +1 前48-72小时期间修改的
注意:两个不一样 find后面的.表示当前目录
4:目录层级 find . -mindepth n:目录最小搜索层级 比如:find . -mindepth 2 -name "a*.txt" 2级以后的
find . -maxdepth n:目录最大搜索层级 比如:find . -maxdepth 2 -name "a*.txt" 2级以前的
find . -maxdepth n - -mindepth n:从几到几
5:连接词 1.-a: and 比如:find . -name "a*" -a -type d
2.-o:or
3.!:not
6:文件类型:-type
7: :-exec -exec command {}\;意思是将find结果传递给command操作,{}是find查处的内容
比如:find . -size 0c -exec ls -l {}\;find . -size 0c -exec cp -r{}demo/\;
5.列出当前目录中所有以"t"开头的目录的详细内容
find . -name "t*" -type d -exec ls -l {} \;
33.查找home目录下文件名为memcache.pid的文件
find /home -name "memcache.pid"
34.查找当前目录下所有以pid结尾的文件
find . -name "*.pid"
35.查找以数字开头的所有pid文件
find . -name "[0-9]*.pid"
36.查找以数字为文件名的所有pid文件
find . -name "[0-9]*.pid" | grep '[0-9]\+.pid$'
37.用户目录下,查找权限为755的文件
find ~ -perm 755
38.当前目录,查找所有以产u_开头的,并且权限为644的文件
find . -name "u_*" -a -perm 644
39.查找当前目录下面的目录
find . -type d
40.找当前目录下面的非目录文件
find . ! -type d
41.查找当前目录中,没有归属的文件
find . -nouser
42.查找用户组为users,所属用户为zhangy的文件
find . -group users -user zhangy
43.查找文件大小大于1000000字符的文件
find . -size +1000000c
44.查找文件大小小于1000000字符的文件
find . -size -1000000c
45.查找文件大小等于1000000字符的文件
find . -size 1000000c
46.查找5天内修改过的文件
find . -mtime -5
47.查找5天前修改过的文件
find . -mtime +4
48.查找修改时间比一参考文件更接近现在的文件
find . -newer reference_file
49.显示当前目录下面所有大于1000000c的文件,列表显示
find . -size 1000000c -exec ls -l {} \;
内容查看 grep的用法:data是 随意命名的文件名
1.grep "home"
2.grep --color = auto "home"
3.alias grep ="grep --color = aoto"
grep "home"
4.grep "[0-9][0-9] " 两位数的查找 [匹配列表中的任意字符]
5.grep "[[:alnum:]]" 匹配字母和数字的字符
6.grep "[^[:alnum:]]" 不匹配字母和数字字符 [匹配列表之外的任意字符]
7.grep "abc$" 以abc为结尾的结束标记gr
8.grep "^abc" 以abc为开始的开始标记
9.grep “world\|say" 或者的意思
10.grep "ab\?c" b字符个数有0-1个。ac或者abc
11.grep "ab\*c" b字符个数是0-任意数
12.grep "ab\+c" b字符个数是1-任意数
13.grep "ab\{2\}c" b字符个数是两个
14.grep "ab\{2,\}c" b字符个数是2到多次
15.grep "\(ab\)\{2,\}c" ab字符个数是2到多次
16. grep"ab\{0,2\}c" b字符个数是0到2次
17.grep -v 显示不匹配的行
18.grep -E=egrep=
19. grep -vE:17+18
20 .grep "a.c" .匹配任意单个字符
注意:字符串匹配建议使用‘’单引号,
需要转义的字符:\? \+ \{\ } \(\) \|
\nth:引用第n个(pattern)
引号 ‘string’ :不论string中包含任意字符,统一视为普通字符。
引号 ”string“:不论string中包含任意字符,统一视为普通字符,对于、 $ ' 无效
·string·:反引号是将string当命令去执行
\string:命令的换行继续符号,对于特殊字符的屏蔽作用。
grep测试题:以下是data文件
60.grep
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
DADddd:x:2:2:daemon:/sbin:/bin/false
mail:x:8:12:mail:/var/spool/mail:/bin/false
ftp:x:14:11:ftp:/home/ftp:/bin/false
&nobody:$:99:99:nobody:/:/bin/false
zhangy:x:1000:100:,,,:/home/zhangy:/bin/bash
http:x:33:33::/srv/http:/bin/false
dbus:x:81:81:System message bus:/:/bin/false
hal:x:82:82:HAL daemon:/:/bin/false
mysql:x:89:89::/var/lib/mysql:/bin/false
aaa:x:1001:1001::/home/aaa:/bin/bash
ba:x:1002:1002::/home/zhangy:/bin/bash
test:x:1003:1003::/home/test:/bin/bash
@zhangying:*:1004:1004::/home/test:/bin/bash
policykit:x:102:1005:Po
61.匹配含有root的行
grep 'root' data
62.匹配以root开头或者以zhang开头的行
grep -E '(^root)|(^zhang)' data
63.匹配以zhang开头,只含有字母的单词行
grep -E '^zhang[a-zA-Z]*$' data
64.不匹配以false结尾的行,并显示行号
grep -nvE 'false$' data
65.显示包含$号的行
grep '\$' data
linux技能点三 find grep的更多相关文章
- 观文章《Linux系统管理员修炼三层次》有感
层次,都不陌生,通俗讲,就是和档次挂钩的,初入江湖时,都想自己几年后,武艺精深,深藏百技,忙时带领团队打BOSS,闲时喝酒论道,博古纵今,想想都令人精神满满,干劲十足!!! 至今已入江湖几载,回首来 ...
- 聊聊我怎么系统学习Linux技能并快速提高的
随着电子信息科技时代的发展,学会使用计算机在我们的生活中成为了必不可少的一项技能.而作为计算机中的三大操作系统之一的Linux更是饱受计算机爱好者们的喜爱.今天我们就来和大家一起聊一聊Linux操作系 ...
- Java开发人员必须掌握的Linux命令(三)
做一个积极的人 编码.改bug.提升自己 我有一个乐园,面向编程,春暖花开! 学习应该是快乐的,在这个乐园中我努力让自己能用简洁易懂(搞笑有趣)的表达来讲解知识或者技术,让学习之旅充满乐趣,这就是写博 ...
- 【转】如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等
如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等 你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作——一些无法并 ...
- linux常用命令三
linux常用命令三 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 ...
- Linux Kernel PANIC(三)--Soft Panic/Oops调试及实例分析【转】
转自:https://blog.csdn.net/gatieme/article/details/73715860 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...
- linux技能点 一
vmware workstation:安装时永久性密钥 5A02H-AU243-TZJ49-GTC7K-3C61N linux技能点:系统管理,网络管理,文件操作,用户管理,文件权限,软件管理 ...
- Linux文本处理三剑客之grep及正则表达式详解
Linux文本处理三剑客之grep及正则表达式详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux文本处理三剑客概述 grep: 全称:"Global se ...
- Linux文本处理三剑客之——grep
一Linux文本处理三剑客之——grep Linux文本处理三剑客都支持正则表达式 grep :文本过滤( 模式:pattern) 工具,包括grep, egrep, fgrep (不支持正则表达式) ...
随机推荐
- Mybatis报错:org.apache.ibatis.builder.IncompleteElementException
org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.lang.Integer遇到这 ...
- Wordpress 安装或切换不同的版本
如果升级到最新版本的 Wordpress 后,发现有 bug,需要回滚回上一个相对稳定的版本,可以按照如下步骤: 一.到官网下载压缩包 https://wordpress.org/download/r ...
- CSAGAN的几大重点 - 2
1.生成器 1)MRU(SketchyGAN) 计算过程为: 与DCGAN[46]和ResNet生成架构的定性和定量比较可以在5.3节中找到.MRU块有两个输入:输入特征图xi和图像I,输出特征图yi ...
- 解决StrToDateTime()不是有效日期类型的问题
方法一: function GetDateFormat():string; var SysFrset: TFormatSettings; begin Result:=''; GetLocaleForm ...
- SDN实验---Mininet实验(模拟多数据中心带宽实验)
补充:NameError: name 'buffer' is not defined >>> import sys >>> ,): ... buffer = mem ...
- Maya编程——沿Curve绘制圆柱
操作流程: 1. VS运行代码,生成插件 2. 打开Maya绘制曲线,加载插件 3. 选中绘制的曲线,运行插件 Posts1.0 代码: #include <maya/MSimple.h> ...
- Xcode7.2真机测试问题"The account 'appleID ' has no team with ID ‘’
在Xcode7(测试版)提出免费真机测试的时候,我立刻在网上搜寻测试步骤,很简单,按照步骤走就可以. 但在7.2以后,突然我的iPhone不能真调了!提示"The account 'app ...
- nginx的rtmp搭建流媒体服务器实现直播流
最近自己搞了一个用nginx的rtmp来搭建流媒体服务器,从而实现直播的过程,参考了网上很多资料,有些资料对于初学者来说比较难以理解,在此将我搭建的过程记录下来,分享给大家. 1.下载nginx-rt ...
- Appium java-client库更新到6.x ,TouchAction类中弃用的函数及替代方法
新版本的java-client已经取消swipe方法,很多TouchAction类中的很多老方法也都已经弃用,具体可以参考这边的官方说明文档: https://static.javadoc.io/io ...
- javascript jssdk微信上传一张图片的方法
javascript jssdk微信上传一张图片的方法 <pre> wx.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'co ...