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 (不支持正则表达式) ...
随机推荐
- MUNIT:Multimodal Unsupervised Image-to-Image Translation - 1 - 论文学习,不成对数据
摘要:无监督图像转换是计算机视觉领域中一个重要而又具有挑战性的问题.给定源域中的一幅图像,目标是学习目标域中对应图像的条件分布,而不需要看到任何对应图像对的例子.虽然这种条件分布本质上是多模态的,但现 ...
- [转]sql server 分页
转自 https://www.cnblogs.com/fengxiaojiu/p/7994124.html 第一种:ROW_NUMBER() OVER()方式 select * from ( sele ...
- linux里安装使用svn
1.安装 sudo apt-get install subversion 2.checkout工程 svn checkout svn://192.168.0.3/测试工具 /home/testtool ...
- python 使用 elasticsearch 常用方法(索引)
#记录管理索引等方法 from elasticsearch import Elasticsearch es = Elasticsearch(['xx.xx.xx.xx:9200']) #获取文档内容r ...
- Nexus上传npm包
1.创建npm仓库 私服仓库npm-hosted 代理仓库npm-proxy npm-group 创建成功 在工程的根目录下创建文件 .npmrc registry=http://xxx:8081/n ...
- 【漫谈数据仓库】 如何优雅地设计数据分层 ODS DW DM层级
转载http://bigdata.51cto.com/art/201710/554810.htm 一.文章主题 本文主要讲解数据仓库的一个重要环节:如何设计数据分层!其它关于数据仓库的内容可参考之前的 ...
- Vmware解决虚拟机不能联网的问题
1. 设置为NAT模式 2. 启动win7的服务,命令窗口输入services.msc 回车 3. 修改Vmware的设置
- “无法从节点xx检索exectask的版本” 原因分析
客户有一套部署在Window 2008 R2 sp环境下的12.1.0.2 RAC环境,该RAC基于策略管理.因为业务需要,现在需要更换部分设备——踢出两台2路的服务器(节点名称分别为racnode2 ...
- POJ-图论-最短路模板(邻接矩阵)
POJ-图论-最短路模板 一.Floyd算法 刚读入数据时,G为读入的图邻接矩阵,更新后,G[i][j]表示结点i到结点j的最短路径长度 int G[N][N];//二维数组,其初始值即为该图的邻接矩 ...
- Java序列化的方式。
0.前言 本文主要对几种常见Java序列化方式进行实现.包括Java原生以流的方法进行的序列化.Json序列化.FastJson序列化.Protobuff序列化. 1.Java原生序列化 Java原生 ...