每日回顾:
1.什么是挂载,如何挂载光盘到/mnt
2.说说/etc/rc.local /etc/fastab. /etc/hosts/etc/profile /var/log/messages /var/log/secure 作用
3.写出网卡配置文件绝对路径
4.红帽系统中如何配置DNS
5.Linux下面安装软件的方式以及使用到的命令
6.说说如何查看系统内存和系统负载
free -h /proc/meminfo
w /proc/loadavg
w uptime top 研究htop
7.什么是系统负载 什么时候系统负载高或低
查询核心总数 lscpu /proc/cpuinfo
[root@oldboyedu59 ~]# #在 /etc/services 文件中过滤出包含3306的行
[root@oldboyedu59 ~]# grep '3306' /etc/services
mysql 3306/tcp # MySQL
mysql 3306/udp # MySQL
[root@oldboyedu59 ~]# #在这个文件中找出以ssh开头的行
[root@oldboyedu59 ~]# grep '^ssh' /etc/services
ssh 22/tcp # The Secure Shell (SSH) Protocol
ssh 22/udp # The Secure Shell (SSH) Protocol
ssh 22/sctp # SSH
sshell 614/tcp # SSLshell
sshell 614/udp # SSLshell
ssh-mgmt 17235/tcp # SSH Tectia Manager
ssh-mgmt 17235/udp # SSH Tectia Manager
通配符与正则区别?
*.txt *.log
touch {01..10}
作用 支持的命令
通配符 方便我们进行查找文件 Linux下面大部分命令支持
正则 方便我们进行过滤(在文件中找内容) Linux三剑客 开发语言 (Python Go PHP JAVA)
通配符:
ls /oldboy/*.txt
find /oldboy/ -type f -name '*.log'
touch lidao{01..10}.txt
正则表达式
[root@oldboyedu59 ~]# #在 /etc/services 文件中过滤出包含3306的行
[root@oldboyedu59 ~]# grep '3306' /etc/services
mysql 3306/tcp # MySQL
mysql 3306/udp # MySQL
[root@oldboyedu59 ~]# #在这个文件中找出以ssh开头的行
[root@oldboyedu59 ~]# grep '^ssh' /etc/services
ssh 22/tcp # The Secure Shell (SSH) Protocol
ssh 22/udp # The Secure Shell (SSH) Protocol
ssh 22/sctp # SSH
sshell 614/tcp # SSLshell
sshell 614/udp # SSLshell
ssh-mgmt 17235/tcp # SSH Tectia Manager
ssh-mgmt 17235/udp # SSH Tectia Manager
$符号
[root@oldboyedu59 /oldboy]# grep ' ' oldboy.txt
I am oldboy teacher!
I teach linux.
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
[root@oldboyedu59 /oldboy]#
[root@oldboyedu59 /oldboy]# grep 'm $' oldboy.txt
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
[root@oldboyedu59 /oldboy]# cat -A oldboy.txt
I am oldboy teacher!$
I teach linux.$
$
I like badminton ball ,billiard ball and chinese chess!$
my blog is http://oldboy.blog.51cto.com $
our size is http://blog.oldboyedu.com $
my qq is 49000448$
$
not 4900000448.$
my god ,i am not oldbey,but OLDBOY! $
转义字符:
[root@oldboyedu59 /oldboy]# echo -e "oldboy\noldgirl\nalex\nlidao"
oldboy
oldgirl
alex
lidao
[root@oldboyedu59 /oldboy]# echo -e "oldboy\noldgirl\nalex\n\t\t\tlidao"
oldboy
oldgirl
alex
grep '^.o*' oldboy.txt
^.o*
当表示出现0次 相当于 ^.
当表示出现0次以上 相当于 ^.o ^.oooo ^.oooooooooo
() 小括号
[] 中括号
{} 大括号 花括号
grep '[a-z]' oldboy.txt
grep '[A-Z]' oldboy.txt
grep '[a-zA-Z]' oldboy.txt
grep '[a-z,A-Z]' oldboy.txt
练习题:
显示以m或n或o开头的行
以m或n或点结尾的行
显示以m或n或o开头的 并且 以m或n或点结尾的行
显示以m或n或o开头的行
[root@oldboyedu59 /oldboy]#
[root@oldboyedu59 /oldboy]# grep '^[mno]' oldboy.txt
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
#以m或n或点结尾的行
[root@oldboyedu59 /oldboy]#
[root@oldboyedu59 /oldboy]# grep '[mn.]$' oldboy.txt
I teach linux.
not 4900000448.
#显示以m或n或o开头的 并且 以m或n或点结尾的行
[root@oldboyedu59 /oldboy]# grep '^[mno].*[mn.]$' oldboy.txt
not 4900000448.
grep '[mn\.]' oldboy.txt
#&&表示并且 命令
grep '^[mno]' oldboy.txt && grep '[mno] $' oldboy.txt
grep '^[mon][mo.]$' /tmp/oldboy
[root@oldboyedu59 /oldboy]# grep '^[mno]' oldboy.txt
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
[root@oldboyedu59 /oldboy]# grep '^[mno]' oldboy.txt |grep '[mn.]$'
not 4900000448.
找出oldboy.txt 中连续出现的字母(大写或小写)
待翻译:
grep '[^m^n^o]' oldboy.txt
grep '^[mon]|[mo.]$' /tmp/oldboy
扩展正则表达式之 |
[root@oldboyedu59 /oldboy]# cat oldboy.txt
I am oldboy teacher!
I teach linux.
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
\\\\\...???$$$$^^&^
[root@oldboyedu59 /oldboy]# egrep 'oldboy|linux' oldboy.txt
I am oldboy teacher!
I teach linux.
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
扩展正则表达式之 ()
[root@oldboyedu59 /oldboy]# egrep 'oldboy|oldbey' oldboy.txt
I am oldboy teacher!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my god ,i am not oldbey,but OLDBOY!
[root@oldboyedu59 /oldboy]# egrep 'oldb[oe]y' oldboy.txt
I am oldboy teacher!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my god ,i am not oldbey,but OLDBOY!
[root@oldboyedu59 /oldboy]# egrep 'oldbo|ey' oldboy.txt
I am oldboy teacher!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my god ,i am not oldbey,but OLDBOY!
[root@oldboyedu59 /oldboy]# egrep 'oldb(o|e)y' oldboy.txt
I am oldboy teacher!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my god ,i am not oldbey,but OLDBOY!
id.txt
金 211324198705244720
万 500224197105168312
任 1231231231oldboy
任 3oldboy
任 lidao97303136098
任 alex2197303136098
任 350182197303oldgir
吕 211282199209113038
孔 150000198309176071
邹 371001197412221284
贺 130185200011215926
杜 362522198711278101
向 14052219961008852X
取出文件中正确的身份证号码的行
egrep '[0-9X]{18}' id.txt
egrep '[0-9]{17}[0-9X]$' id.txt
基础 扩展
含义
支持命令 grep/sed/awk grep -E/egrep 或 sed -r 或 awk
网友评论