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 (不支持正则表达式) ...
随机推荐
- 安装MySQL Server
之前安装了MySQL Workbench 8.0 CE,现在来安装MySQL Server. 点击 add next next next 完成 MySQL安装包地址: 链接:https://p ...
- mysql删除唯一索引
在项目中用spring data jpa指定了一个唯一索引: @Entity @Table(name = "t_product") @Getter @Setter @AllArgs ...
- /bin/sh^M:解释器错误:没有那个文件或目录
在win下编辑的时候,换行结尾是\n\r , 而在linux下 是\n,所以才会有 多出来的\rsed -i 's/\r$//' configure 删除configure脚本中的\r
- Pandas的DataFrame
1. 手工创建DataFrame a = [[1, 2, 2],[3,None,6],[3, 7, None],[5,None,7]] data = DataFrame(a) 2. Excel数据数据 ...
- Docker 运行Kafka容器
1. 启动Zookeeper docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper 2. 启动Kafka dock ...
- 分布式ID生成总结
1.数据库自增id 新建一个公共库,库里面新建一个序列表,主键id自增,每次请求增加数据都往这个表中插入数据,然后获取到id,然后使用即可. 优点:方便简单 缺点:单库生成自增id,高并发下,会有瓶颈 ...
- svg轻松实现文字水印
1. 水印图片生成采用svg,这样可以运行时生成名字或其他信息的图片 svg模板 <svg xmlns="http://www.w3.org/2000/svg" xmlns: ...
- 和至少为K的最短子数组
返回 A 的最短的非空连续子数组的长度,该子数组的和至少为 K 如果没有和至少为 K 的非空子数组,返回 -1 . 示例 1: 输入:A = [1], K = 1 输出:1 示例 2: 输入:A = ...
- 浅谈Javascript 浅拷贝和深拷贝的理解
javascript中存储对象都是存地址的. 浅拷贝:浅拷贝是都指向同一块内存区块,浅拷贝共用同一内存地址,你改值我也变.如果拷贝的对象里面的值是一个对象或者数组,它就是浅拷贝,拷贝的知识引用地址. ...
- html5传感器
html5传感器(注意苹果和安卓方向是相反的 回调函数触发的速度苹果要快很多 设置坐标不要设置在回调函数里)以下是代码<pre><!DOCTYPE html><html ...