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 (不支持正则表达式) ...
随机推荐
- python-selenium登陆今日头条
https://blog.csdn.net/a942242856/article/details/88379727 原文地址:http://www.bianbingdang.com/article_d ...
- parquet 简介(转)
原文 Parquet 列式存储格式 面向分析型业务的列式存储格式 由 Twitter 和 Cloudera 合作开发,2015 年 5 月从 Apache 的孵化器里毕业成为 Apache 顶级项目 ...
- 【转】WPF DataGridComboBoxColumn使用
若要填充下拉列表,请首先使用下列选项之一设置 ComboBox 的 ItemsSource 属性.静态资源. x:Static 代码实体.ComboBoxItem 类型的内联集合.实现效果如下: 如需 ...
- 【jmeter】使用csv文件生成用户名和密码列表
介绍 在[jmeter]使用jmeter进行测试-示例 中介绍了jmeter的基本使用,本文将介绍如何使用csv文件生成多个用户名. 应用场景 实际测试中,经常需要模拟多个用户进行负载测试,而用户名和 ...
- Linux命令-nohup和&
基础 在linux终端或控制台上执行命令时,可能不希望脚本占住屏幕需要在后台执行脚本,有几种方法让脚本在后台执行: & 当在前台运行某个作业时,终端被该作业占据:可以在命令后面加上& ...
- k8s记录-kubeam方式部署k8s
参考:https://blog.csdn.net/networken/article/details/84991940 # k8s工具部署方案 # 1.集群规划 | **服务器** | || ---- ...
- c# HTML5 Blob对象实现媒体播放功能
后台代码: public ActionResult Video() { string filePath = @"D:\download\test.mp ...
- siglongjmp和sigsetjmp 用法
1. 引入原因 由于在信号处理期间自动屏蔽了正在被处理的信号,而使用setjmp/longjmp跳出信号处理程序时又不会自动将 信号屏蔽码修改会原来的屏蔽码,从而引起该信号被永久屏蔽. 可以使用sig ...
- WeQuant教程—1.5 实盘运行须知
为了保证实盘交易程序能够正常稳定地运行,同时保护您在使用时账户资金的安全,我们设计了一些规则和机制.了解这些机制有助于您更快上手实盘交易. 启动前检查机制 在实盘交易程序启动前,系统会执行一次检查,出 ...
- docker load tar.gz包失败解决方法
执行docker load -i xxx.tar.gz时候报错 open /var/lib/docker/xxx No such file or directory 这种情况属于容器快照文件缺乏基础镜 ...