文件查看命令 cat,tac,rev
cat [options] [file]
nl file 也能实现相同的功能
-
-b:显示非空行号
-
-A:显示所有控制字符
-
-s:压缩连续的空行成一行
tac 逆序显示,和cat相反
more:分页查看文件
more [options ..] file..
-d:显示翻页及退出提示
less:一页一页的查看文件或者stdin输出
/文本 搜索 文本
n/N 跳到下一个或上一个匹配
less命令是man命令使用的分页器
head:显示文本前几行内容,默认显示10行,读10行
打印10行
head [options] [file]
options:
- -c #: 显示前多少个字节
- -n #: 显示前几行
tail:从文本末尾开始显示内容,默认后10行
tail [options] [file]
options:
- -c #:取后几个字节
- -n #:取后几行
- -f 跟踪文件的 变化,不退出,动态显示文件的变化
tail -f -n0 只显示变化的部分
tail -f -n0& 转入后台执行,释放终端资源,jobs(查看后台执行程序的编号), fg 1(将后台程序转入前台)
cut:按列截取文本内容
cut [options] [file]
options:
-d[characters] :指定分隔符,默认tab
-f#: 指定字段
#:显示某一列
#,#离散的几列
#-#连续的列
-c 按字符切割
–output-delimiter=string:指明输出分隔符
echo abcd | rev 倒序显示
wc:word count
wc [options] [file]
默认显示:xx行数 xxx单词数 xxx字节数 xx文件名
options:
-l 显示行数
-w 显示单词数
-c 显示字节数
-m 显示字符数
sort 文本排序
sort [options] [fil+e]
- -n 按数字大小排序
- -t character指定分隔符
- -k # 指定某一列
- -r 逆序排序
- -f 忽略大小写
- -u 重复的行只显示一次
uniq 报告或显示重复的行(连续行重复才算连续,断行重复不算连续)
uniq [options] [file]
-c 显示每行重复出现的次数
(连续且完全相同方为重复)
diff 比较两个文件有什么区别、生成补丁文件
diff [option] [file1] [file2]
diff -u f1 f2 > patch.txt
patch打补丁
patch -b f1 < patch.txt 或者patch -b f1 patch.txt
grep :文本过滤
grep,egrep,fgrep(不支持正则表达式)
作用:文本搜索工具,根据用户指定的“模式”对目标进行逐行匹配,打印匹配到的行。
grep [options] pattern [file]
options:
- –color=auto 对匹配到行显示颜色
- -v 只显示未匹配到的行
- -i 忽略字符大小写
- -e 或者,连接不同的匹配条件
- -n 对匹配到的行显示行号
- -c 显示有多少行符合匹配条件
- -o 只显示匹配到的行
- -q 静默模式,不输出任何信息
- -A #:after显示匹配到行的并显示后续三行
- -B #:before:显示匹配到的行并显示前三行
- -C #:context:显示匹配到的行并显示前后各三行
- -w:匹配整个单词
- -E:扩展正则表达式
- -F:fgrep不支持正则表达式
正则表达式:由一些特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能。
元字符分类:
字符匹配:
- . :匹配任意单个字符
- []: 匹配指定范围内的字符
- [^]:匹配指定范围外的字符
- [:alnum:] 字母和数字
- [:alpha:] 字母
- [:lower:] 小写字母
- [:upper:] 大写字母
- [:blank:] 空白字符(空格和制表符)
- [:space:] 水平和垂直的空白字符
- [:cntrl:] 不可打印的控制字符
- [:print:] 可打印的字符
- [:digit:] 十进制数字
- [:graph:] 可打印的非空白字符
- [:punct:] 标点符号
- [:xdigit:] 十六进制数字cl
匹配次数:
- * 匹配前面的字符任意次
- 贪婪模式,尽可能多的匹配
- \?匹配0或一次
- \+匹配前面字符一次或者更多次
- \{#\}匹配前面字符#次
- \{m,n\}:匹配前面的字符至少m次,至多n次
- \{,n\}:匹配前面的字符至多n次
- \{n,\}匹配前面的字符至少n次
注:man 7 regex:正则表达式相关信息
原创文章,作者:switch,如若转载,请注明出处:http://www.178linux.com/70035