【Linux】鸟哥的Linux私房菜基础学习篇整理(六)
1. 正则表达式特殊符号。
[:alnum:]:代表英文大小写字符及数字;
[:alpha:]:代表英文大小写字符;
[:blank:]:代表空格键与[Tab]键;
[:cntrl:]:代表键盘上的控制键,即包括CR、LF、Tab、Del键;
[:digit:]:代表数字;
[:graph:]:除了空格符外的其他所有按键;
[:lower:]:代表英文小写字符;
[:print:]:代表任何可以被打印出来的字符;
[:punct:]:代表标点符号,即"'?!;:#$;
[:upper:]:代表英文大写字符;
[:space:]:代表会产生空白的字符,包括CR、Tab等;
[:xdigit:]:代表十六进制的数字类型;
2. grep [-A] [-B] [--color=auto] '搜索字符串' filename:搜索字符串
参数:
[-A]:后面可接数字,表示列出搜索行外,后续n行也列出;
[-B]:后面可接数字,表示列出搜索行外,前面n行也列出;
3. 基础正则表达式字符。
^word:表示待查找的字符串word在行首;
word$:表示待查找的字符串word在行末;
.:代表一定有一个任何字符的字符;
\:代表转移字符,将特殊符号的特殊意义去除;
*:重复零个到无穷个的前一个字符;
[list]:从字符集合的RE字符里面找出想要的字符;
[n1-n2]:从字符集合的RE字符里面找出想要选取的字符范围;
[^list]:从字符集合的RE字符里面找出不想要的字符;
\{n,m\}:连续n到m个的前一个RE字符,若为\{n\}则是连续n个前一个字符,若为\{n,\}则是连续n个以上前一个字符。
4. sed [-nefr] 动作:管道命令,分析标准输入。
参数:
-n:使用安静模式,仅有被sed处理后的数据才会显示;
-e:直接在命令行模式上进行sed的动作编辑;
-f:直接将sed的动作写在文件内,-f filename则可以执行filename内的sed动作;
-r:使sed的动作支持扩展的正则表达式(默认是基础正则表达式);
-i:直接修改读取的文件内容,而不是由屏幕输出。
动作说明:[n1[,n2]] function
n1, n2:不见得会存在,一般代表选择进行动作的行数范围。
function参数:
a:新增,a的后面可接字符串,而这些字符串会在新的一行出现(目前的下一行);
c:替换,c的后面可接字符串,而这些字符串会替代n1-n2之间的行;
d:删除,后面不接字符串;
i:插入,i的后面可接字符串,而这些字符串会在新的一行出现(目前的上一行);
p:打印,打印某个范围的数据,通常会与sed -n一起运行;
s:替换,可以直接进行替换的工作,通常这个s搭配正则表达式,如1,20s/old/new/g。
5. 扩展正则表达式。
RE字符:
+:重复一个或一个以上的前一个RE字符;
?:零个或一个的前一个RE字符;
|:用或的方式找出数个字符串;
():找出“组”字符串,如g(la|oo)d,表示glad或good;
()+:多个重复组的判别。
6. printf '打印格式' 实际内容:格式化输出。
参数:
关于格式方面的特殊样式:
\a:警告声音输出;
\b:退格键;
\f:清除屏幕;
\n:换行;
\r:回车;
\t:水平[Tab]键;
\v:垂直[Tab]键;
\xNN:NN为两位数的数字,可将数字转换为16进制字符。
常见变量格式:
%ns,n代表数字,表示该字符串占据多少个字符;
%ni,n代表数字,表示该整数占据多少个字符;
%N.nf,N与n代表数字,表示该浮点数占据N个字符,精度n个字符;
7. awk '条件类型1{动作1} 条件类型2{动作2}...' filename:awk处理小型数据。
awk变量说明:
NF:每一行($0)拥有的字段总数;
NR:目前awk正处理的第几行数据;
FS:目前的分隔符,默认是空格键。
awk的逻辑运算符:
>:大于
<:小于
>=:大于或等于
<=:小于或等于
==:等于
!=:不等于
8. diff [-bBi] from-file to-file:文件比较。
参数:
from-file:欲比较的文件名;
to-file:作为目的进行比较的文件名;
-b:忽略一行当中有多个空白的区别;
-B:忽略空白行的区别;
-i:忽略大小写的不同。
9. cmp [-s] file1 file2:以字节比较文件。
参数:
-s:讲所有的不同点的字节处都列出来,cmp默认仅会列出第一个发现的不同点。
10. patch [-R] [-pN] < patch_file:还原diff制作出来的补丁文件(.patch)。
参数:
-p:后面的N表示取消几层目录的意思;
-R:代表还原,将新文件还原为旧版本,不加-R则表示更新,将旧版本更新为新版本。
11. pr:文件打印准备。
【Linux】鸟哥的Linux私房菜基础学习篇整理(六)的更多相关文章
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(一)
最近,一直在写PPC的模拟器和汇编器,也在做设计.所以重新看了看<鸟哥的Linux私房菜>,还是有好多命令不太熟悉.就打算写几篇blog记下来. 1. nl [-bnw] filename ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(三)
1. gzip [-cdtv#] filename:压缩.参数:-c:将压缩的数据输出到屏幕上,可通过数据重定向进行处理:-d:解压缩的参数:-t:可以用来检验一个压缩文件的一致性,查看文件有无错误: ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(十一)
1. 直接将命令丢到后台中执行“&”,在命令最后加“&”. 将目前的工作丢到后台中暂停:[Ctrl]+z 2. jobs [-lrs]:查看目前的后台工作状态.参数:-l:除了列 ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(十)
1. at [-mldv] TIME/at -c 工作号码:单一工作调度.参数:-m:当at的工作完成后,即使没有输出信息,以email通知用户该工作已完成:-l:相当于atq,列出目前系统上面的所有 ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(九)
1. quotacheck [-avugfM] [/mount_point]:扫描文件系统并创建Quota配置文件.参数:-a:扫描所有在/etc/mtab内,含有quota支持的文件系统,加上此参数 ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(八)
1. useradd [-u UID] [-g 初始用户组] [-G 次要用户组] [-mM]\ [-c 说明栏] [-d 主文件夹绝对路径] [-r] [-s shell] 用户账号名:新增用户 ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(七)
1. test命令的测试功能.测试的标志:(1)关于文件类型的检测 test [-efdbcSpL] filename-e:该文件名是否存在:-f:该文件名是否为文件:-d:该文件名是否为目录:-b: ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(五)
1. type [-tpa] name:查看name命令是否为bash内置命令.参数:type:不加任何参数,type会显示出那么是外部命令还是bash的内置命令:-t:当加入-t参数时,type会通 ...
- 【Linux】鸟哥的Linux私房菜基础学习篇整理(四)
1. VI按键说明.(1)移动光标的方法h或向左箭头:光标向左移动一个字符:j或向下箭头:光标向下移动一个字符:k或向上箭头:光标向上移动一个字符:l或向右箭头:光标向右移动一个字符:进行多次移动,如 ...
随机推荐
- Hive数据导入
可以通过多种方式将数据导入hive表 1.通过外部表导入 用户在hive上建external表,建表的同时指定hdfs路径,在数据拷贝到指定hdfs路径的同时,也同时完成数据插入external表. ...
- ios从相册:摄像头中获取视频
ios从相册/摄像头中获取视频 如何从相册中获取视频 使用的是一个和获取照片相同的类UIImagePickerController //相册中获取视频 - (IBAction)clickViedoOF ...
- 谁是谁的first-child
看过CSS伪类选择器之后,心想也就如此嘛,:first-child选择元素的第一个子元素,有什么难的,可一到实践中,还是到处碰壁啊. <body> <ul class="f ...
- mvc4+jquerymobile页面加载时无法绑定事件
问题:在view里写js,在页面第一次加载完成后,无法触发事件, 如:按钮click事件,已经在$(function(){ 添加了click });但就是无法触发,必须刷新下才可以. 原因分析: 主 ...
- 认识k_BackingField【转】
事情从Json的序列化和反序列化说起. 在C#2.0的项目中,以前经常使用Json.Net实现序列化和反序列化.后来从c#3.0中开始使用新增的DataContractJsonSerializer进行 ...
- Linux 查看系统硬件信息(实例详解)
原文链接:http://www.cnblogs.com/ggjucheng/archive/2013/01/14/2859613.html linux查看系统的硬件信息,并不像windows那么直观, ...
- Android开发手记(26) Java多线程的实现
随着多核CPU的发展,多线程编程显得越来越重要,本文将对Java中的多线程编程进行一些简单的探讨. 1.继承Thread类 Java中,线程运行的基本单位是Thread,所以,我们可以通过继承Thre ...
- 分离数据库(Detach database).
Many times, we often needs to detach our databases if we want to copy it to another database instanc ...
- XFire构建服务端Service的两种方式(转)
XFire构建服务端service的两种方式,一是用xfire构建,二是和spring集成构建. 一,xifre构建,确保把xfire的jar包导入到工程中或classpath. 1,service的 ...
- oracle行列转换总结-转载自ITPUB
原贴地址:http://www.itpub.net/thread-1017026-1-1.html 谢谢原贴大人 最近论坛很多人提的问题都与行列转换有关系,所以我对行列转换的相关知识做了一个总结, 希 ...