day11 grep正则匹配
ps aus | trep nginx # 查看所有正在运行的nginx任务 别名路径:
alias test_cmd='ls -l'
PATH路径:
临时修改:
PATH=$PATH:/usr/local/nginx/sbin
export PATH 将ngxin路径放入PATH中
每次切换用户,都会读取该用户家目录中的/home/[user]/.bashrc文件,所以,如果把命令写到这个文件中,那么这个用户就可以执行它 永久修改:
/etc/bashrc # 在这里面修改,可以作为全局变量,只要开启shell就会执行这个文件
/etc/profile # 在这里面修改,可以作为全局变量,只要登录就会加载这个文件 export [变量] 使[变量]可以作用于该程序的所有子程序 通配符:
; 接受过个命令,不管命令结果,依次接受
$? 取上一次命令成功的结果,如果是0表示执行成功,非0,表示执行事变
: 执行结果永远为真
? 表示任意一个字符 正则表达式:
grep 命令 + 正则表达式:
-n 显示行号
-q 主要用来判断这条任务有没有成功,可用来验证文件中是否包含内容
-l 显示路径
-rl 递归着去文件中查找子文件,并显示文件名
-A 匹配行的后两行
-B 匹配行的前两行
-C 匹配行的前后一行
-i 忽略大小写
-o 只显示匹配的内容
-v 取反
-w 过滤单词,可以找到用空格或其它符号分开的单词 正则表达式:
grep普通的查找,如果不行,就换egrep扩展正则
^ 行首,如: '^hello'
$ 行尾,如: 'hello$'
. 除了换行符以外的一个字符
* 左面字符出现零次到无穷次
grep -E '(ab)*' test.txt 查找多个或另个 ab 连续的,没有也算
grep -E 'ab(ab)*' test.txt 至少出现一个
? 左面字符出现零次或一次
+ 左面字符出现一次到无穷次
{} 左面字符出现花括号中的次数
{,} 左面字符出现花括号中3到*次的次数
.* 随意字符
[-] 任意数字, [a-z] 左右小写字母, [A-Z] 所有大写字母, [a-Z] 所有字母, [^-] 除了0-
| 或者
x\{m\} x出现m次
x\{m,\} x出现m次至多次(至少m次)
x\{m,n\} x出现m次至n次
'compan(y|ies)'
-v 非 shell script
unset x 取消变量x
PS1 这个变量可以修改浅慢的 root那啥的,就是那个输入命令的,前面的那个
[ ] 可以比较大多数东西
(( )) 数字之间的比较
================================================================
作业二:grep作业(正则表达式及字符处理)
目标文件/etc/passwd,使用grep命令或egrep
1.显示出所有含有root的行:
[root@bogon ~]# egrep root /etc/passwd

2.输出任何包含bash的所有行,还要输出紧接着这行的上下各两行的内容:
[root@bogon ~]# egrep -C 2 bash /etc/passwd

3. 显示出有多少行含有nologin。
[root@bogon ~]# egrep -c nologin /etc/passwd

4.显示出那些行含有root,并将行号一块输出。
[root@bogon ~]# egrep -n root /etc/passwd

6.新建用户
abominable
abominate
anomie
atomize
编写正则表达式,将他们匹配出来
[root@bogon sbin]# useradd abominable
[root@bogon sbin]# useradd abominate
[root@bogon sbin]# useradd anomie
[root@bogon sbin]# useradd atomize
[root@bogon sbin]# egrep '^a(b|n|t)omi(nable|nate|e|ze)' /etc/passwd

7.建四个用户
Alex213sb
Wpq2222b
yH438PIG
egon666
egon
过滤出用户名组成是字母+数字+字母的行
8.显示出/etc目录下所有包含root的文件名
9. 过滤掉/etc/ssh/sshd_config内所有注释和所有空行
[root@bogon sbin]# useradd Alex213sb
[root@bogon sbin]# useradd Wpq2222b
[root@bogon sbin]# useradd yH438PIG
[root@bogon sbin]# useradd egon666
[root@bogon sbin]# useradd egon

8.显示出/etc目录下所有包含root的文件名
[root@bogon sbin]# egrep -rl 'root' /etc/

9. 过滤掉/etc/ssh/sshd_config内所有注释和所有空行
[root@bogon sbin]# grep -v '#' /etc/ssh/sshd_config | grep -v '^$'

作业三:
linux下源码安装python,并设置PATH
下载
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz -P /root/Downloads/

解压
[root@bogon Downloads]# cd /root/Downloads/
[root@bogon Downloads]# tar -xzvf Python-3.6.1.tgz

安装
[root@bogon Downloads]# cd Python-3.6.1/
[root@bogon Python-3.6.1]# mkdir /usr/local/python3.6
[root@bogon Python-3.6.1]# ./configure --prefix=/usr/local/python3.6

[root@bogon Python-3.6.1]# make && make install

Installing collected packages: setuptools, pip
Successfully installed pip-9.0.1 setuptools-28.8.0
[root@bogon Python-3.6.1]# cd /usr/local/python3.6/

[root@bogon python3.6]# cd bin

加入环境变量
[root@bogon bin]# vim /etc/bashrc



windows下安装python,并设置PATH



day11 grep正则匹配的更多相关文章
- shell grep正则匹配汉字
Shell grep正则匹配中文 测试文本 demo_exe.c,内容如下,需要注意保存的编码格式,对输出到终端有影响: 我们中文操作系统ASNI默认是GBK的. #include<stdio. ...
- liux三剑客grep 正则匹配
001正则匹配(大部分需要转义) ‘^‘: 锚定行首 '$' : 锚定行尾 [0-9] 一个数字 [^0-9] 除去数字所有,^出现在[]这里表示取反 [a-z] [A-Z] [a-Z] \s 匹配空 ...
- grep 正则匹配
\{0,n\}:至多n次 \{\ 匹配/etc/passwd文件中数字出现只是数字1次到3次 匹配/etc/grub2.cfg文件以一个空格开头匹配一个字符的文件的所有行 显示以LISTEN结尾的行 ...
- grep[行号&正则匹配字符有颜色]
事情是这样的,昨天在深入学习grep命令时,看到别人博客用grep正则匹配,不仅行数有颜色,而且匹配到的字符也有颜色.我在CRT也试了下,毛颜色都没有.顿时感觉 so low. 解决 编辑vim~/. ...
- Linux篇---Grep和正则匹配
一.前述 Linux中正则匹配查找比较常用,所以分享一篇关于正则匹配和Grep结合的文章. 二.匹配规则 匹配操作符: \ 转义字符. ...
- grep 常用正则匹配
1.或操作 grep -E '123|abc' filename // 找出文件(filename)中包含123或者包含abc的行 egrep '123|abc' filename // 用egrep ...
- Linux下find一次查找多个指定类型文件,指定文件或者排除某类文件,在 GREP 中匹配多个关键 批量修改文件名等
http://blog.sina.com.cn/s/blog_62e7fe670101dg9d.html linux下二进制文件查找: strings 0000.ts | grep -o " ...
- grep精确匹配搜索某个单词的用法 (附: grep高效用法小结))
grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正 ...
- grep 正则表达
常见的 grep 正则表达参数 -c # 显示匹配到得行的数目,不显示内容 -h # 不显示文件名 -i # 忽略大小写 -l # 只列出匹配行所在文件的文件名 -n # 在每一行中加上相对行号 -s ...
随机推荐
- vue-cli中进行微信支付代码详解
最近做微信支付,颇经历一番波折,这里总结一下,便于以后少走弯路: 在进行微信支付,除了需要公众号之外,你还需要一个微信商户.根据商户规则进行商户申请 这是公众号的基本开发配置,这里在微信授权的时候就已 ...
- 借用数组对象的prototype给数组扩充降维方法
原理:只要是一个对象,他都有一个prototype原型对象,保存共有的属性和方法. <!DOCTYPE html> <html lang="en"> < ...
- vscode centos
https://www.cnblogs.com/My-Jinse/articles/8400137.html rpm -ql 包名 缺少libXss.so.1()(64bit) yum install ...
- 创建maven项目的时候:Could not resolve archetype org.apache.maven.archetypes:maven-archetype-webapp:1.0 from any of the configured repositories. 解决办法
问题: https://yq.aliyun.com/ziliao/364921 尝试没成功. https://www.aliyun.com/jiaocheng/296712.html 尝 ...
- NX二次开发-UFUN设置透明度UF_OBJ_set_translucency
NX9+VS2012 #include <uf.h> #include <uf_modl.h> #include <uf_obj.h> UF_initialize( ...
- NX二次开发-算法篇-判断找到两个数组里不相同的对象
NX9+VS2012 #include <uf.h> #include <uf_curve.h> #include <uf_modl.h> #include < ...
- Java-Class-C:java.util.HashMap
ylbtech-Java-Class-C:java.util.HashMap 1.返回顶部 1.1. import java.util.HashMap; import java.util.Map; 1 ...
- LeetCode 1037. Valid Boomerang (有效的回旋镖)
题目标签:Math 题目给了我们三个点,让我们判断这三个点是否在一条直线上. 利用斜率 k = (y1 - y0) / (x1 - x0) 来判断,如果 三个点 abc, ab 的斜率 = bc 的斜 ...
- SPI 及初始化例子
概述 时钟相性与极性 CPOL(Clock Polarity)控制空闲状态时SCK的值:CPOL=0,空闲时SCK=0:CPOL=1,空闲时SCK=1. CPHA(Clock Phase)控制何时捕获 ...
- Allow Pin Swapping Using these Methods options
Frm:http://techdocs.altium.com/display/ADOH/Pin,+Pair+and+Part+Swapping#Pin,PairandPartSwapping-Swap ...