Linux运维学习笔记-通配符及正则表达式知识总结
通配符:
* |
代表所有 |
|
? |
任意一个字符 |
|
; |
两个命令的分隔符 |
|
# |
注释 |
|
| |
管道,将|前命令的执行结果作为|后命令的输入 |
|
~ |
用户的家目录 |
|
- |
上一次的目录 |
|
$ |
变量前面需要加的符号 |
echo $LANG |
/ |
路径分隔符 |
|
> |
重定向(覆盖) |
|
>> |
追加重定向 |
|
< |
输入重定向 |
xargs、tr |
<< |
追加输入重定向 |
cat |
'' |
单引号,不具有变量置换功能,输出时所见即所得 |
echo 'date' |
"" |
具有变量置换功能,解析变量后输出,不加引号相当裕双引号 |
echo "`date`" |
`` |
反引号,两个`` 中间为命令,会先执行,等价$() |
echo "$(date)" |
{} |
中间为命令区块组合或内容序列 |
|
! |
逻辑运算中的"非"(not) |
|
&& |
and 并且,当前一个指令执行成功时,执行后一个指令 |
|
|| |
or 或者,当前一个指令执行失败时,执行后一个指令 |
|
.. |
上一级目录 |
|
. |
当前目录 |
正则表达式:为处理大量字符串而定义的一套规则和方法。
常用于(grep\awk\sed)
注意事项:
1、linux正则表达式一般以行为单位进行处理的。
2、alias grep='grep –color=auto'让匹配的内容显示颜色。
3、注意字符集,export LC_ALL=C
例子:
cat >>oldboy.log<<GONGLI
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 site is http://www.etiantian.org
my qq num is 49000448
not 4900000448.
mygod,i am not oldboy,but OLDBOY!
GONGLI
示例:
grep -n显示行号,-v排除,-o只显示匹配到的内容,默认匹配行
过滤出以m开头
[root@ctc oldboy]# grep "^m" oldboy.log
my blog is http://oldboy.blog.51cto.com
my qq num is 49000448
mygod,i am not oldboy,but OLDBOY!
过滤出以m结尾
[root@ctc oldboy]# grep "m$" oldboy.log
my blog is http://oldboy.blog.51cto.com
过滤出空行
[root@ctc oldboy]# grep -n "^$" oldboy.log
3:
8:
[root@ctc oldboy]#
过滤掉除空行外的所有
[root@ctc oldboy]# grep -nv "^$" oldboy.log
1:I am oldboy teacher!
2:I teach Linux.
4:I like badminton ball,billiard ball and chinese chess!
5:my blog is http://oldboy.blog.51cto.com
6:our site is http://www.etiantian.org
7:my qq num is 49000448
9:not 4900000448.
10:mygod,i am not oldboy,but OLDBOY!
只过滤除指定字符
[root@ctc oldboy]# grep -o "qq" oldboy.log
示例:
示例:
grep:
元字符:
\b 单词边界
\n 换行
Sed:
stream editor Linux三剑客老二,流编辑器,实现对文件的增删改替换查。
参数:-n 取消默认输出,-i 修改文件内容,-e 允许多项编辑
功能:
p打印。
s与g联合使用时,表示对当前行全局匹配替换。
s常说的查找并替换,用一个字符串替换成另一个。
例子:sed -i s#oldboy#oldgirl#g a.txt
#是分隔符,可以用/@等替换
Awk:
awk 过滤、输出内容,一门语言。NR 行号。
$1 第一列,$2 第二列依次类推,但$0表示一行,NF表示最后结尾一列。
NR表行数
-F 指定分隔符。
命令的语法始终是:awk '{pattern + action}' 或者 awk 'pattern {action}'。
例子:awk -F % 'NR>=7,NR<=15 {print $1
$3 $7}' myfile
Linux运维学习笔记-通配符及正则表达式知识总结的更多相关文章
- 兄弟连Linux运维学习笔记
最新经典linux运维兄弟连Linux运维学习笔记... --------------- 全程1.5倍播放.加油我一定可以学完Linux----------------------Unix与Linux ...
- Linux运维学习笔记-文件系统知识体系总结
文件系统知识总结 新买的硬盘要存放数据需要怎么做? 首先将硬盘装机做RAID,做完RAID后进行分区,分完区后格式化创建文件系统,最后存放数据. 硬盘的内外部结构: 物理形状: 接口类型: IDE(I ...
- Linux运维学习笔记-文件权限知识总结
权限总结: 1. 可读r:表示具有读取\阅读文件内容的权限: 2. 可写w:表示具有新增.修改文件内容的权限: a. 若果没有r配合,那么vi编辑文件会提示无法编辑(但可以强制编辑),echo可以重定 ...
- Linux运维学习笔记-软硬链接知识总结
文件链接 硬链接,通过索引节点来进行链接 硬链接原理图 硬链接的创建: 直接执行命令“ln 源文件 硬链接文件”,即可完成创建硬链接. 硬链接知识小结: 1.具有相同Inode节点号的多个文件是互 ...
- Linux运维学习笔记-目录知识点总结
目录知识点总结: Note: 1.创建一个/server/scripts目录,用于存放脚本(命令:mkdir -p /server/scripts) 2.安装软件时,安装路径统一为/usr/local ...
- Linux运维学习笔记-iptables知识总结
- Linux运维学习笔记-TCP三次握手和四次挥手
TCP三次握手: TCP四次挥手:
- Linux运维学习笔记-网络技术知识体系总结
传统网络知识体系 未来网络SND模型架构
- Linux运维学习笔记-网络安全等级保护
网络安全等级保护简介与作用: 验证信息系统是否满足相应安全保护等级的一个过程. 对不同信息系统分等级进行保护.
随机推荐
- django-from
构建一个表单 这是一个非常简单的表单.实际应用中,一个表单可能包含几十上百个字段,其中大部分需要预填充,而且我们预料到用户将来回编辑-提交几次才能完成操作. 我们可能需要在表单提交之前,在浏览器端作一 ...
- python连接MySQL数据库问题
Python 数据库图解流程 Connection.Cursor比喻 Connection()的参数列表 host,连接的数据库服务器主机名,默认为本地主机(localhost).user,连接数据库 ...
- 20145311 《Java程序设计》第5周学习总结
20145311 <Java程序设计>第5周学习总结 教材学习内容总结 第八章 8.1语法与继承结构 8.1.1Try.catch java中所有的错误都会打包为对象,可以try catc ...
- android驱动学习---led实验
======================== 驱动: 内核:android-kernel 2.6.36 (必须对应你的板子上内核,不然会出现insmod错误) 目的:通过android应用层用户 ...
- Scan法求凸包
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1348 给一个半径和n个点 求圆的周长 + n个点的凸包的周长 #include<bits/std ...
- Coursera SDN M1.2.1 SDN History: Programmable Networks 2
NOTE Capsules Example 1.Type Field: excute forwarding routine => carry program 2.Previous address ...
- k8s 学习笔记 etcd
1. Etcd Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息.在后面具体的安装环境中,我们安装的etcd的版本是v3.1.5,整个kuberne ...
- mysql Alter 的问题
转自:https://blog.csdn.net/c_enhui/article/details/50903351 -- 设置或删除列的默认值.该操作会直接修改.frm文件而不涉及表数据. 此操作很快 ...
- TC 配置插件
转载:http://hi.baidu.com/accplaystation/item/07534686f39dc329100ef310 1.插件下载地址:http://www.topcoder.com ...
- python 返回系统位数
# For bit it will and bit it will import struct print()