这三个指令,每个都很经常使用,用法也都不少。做为一个Linux初学者,我还不能很好的掌握三个命令的用法,因而先在这篇博客里作一个简单的整理和总结,以加深对三个指令的理解。javascript
先说grep,linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是全部用户。(摘抄过来的)php
grep的通常使用方法就是:grep+[options]+pattern+filenamecss
其中patter是要搜索的字符串或正则表达式。html
参数和正则表达式的字符含义以下:java
一、参数:
-i :忽略大小写
-c :打印匹配的行数
-l :从多个文件中查找包含匹配项
-v :查找不包含匹配项的行
-n:打印包含匹配项的行和行标
二、RE(正则表达式)
\ 忽略正则表达式中特殊字符的原有含义
^ 匹配正则表达式的开始行
$ 匹配正则表达式的结束行
\< 从匹配正则表达式的行开始
\>; 到匹配正则表达式的行结束
[ ] 单个字符;如[A] 即A符合要求
[ - ] 范围 ;如[A-Z]即A,B,C一直到Z都符合要求
. 全部的单个字符
* 全部字符,长度能够为0
python
明确要求搜索子目录:grep -r
或忽略子目录:grep -d skip
linux
若是有不少 输出时,您能够经过管道将其转到’less’上阅读:
$ grep magic /usr/src/Linux/Documentation/* | less
正则表达式
常见的示例有:objective-c
grep Aug /var/log/messages 在文件 ‘/var/log/messages’中查找关键词”Aug”
grep ^Aug /var/log/messages 在文件 ‘/var/log/messages’中查找以”Aug”开始的词汇
grep [0-9] /var/log/messages 选择 ‘/var/log/messages’ 文件中全部包含数字的行
grep Aug -R /var/log/* 在目录 ‘/var/log’ 及随后的目录中搜索字符串”Aug”算法
结合选项就会有更丰富的应用。
接着是cat的用法,在此我参考了http://blog.csdn.NET/jackalfly/article/details/7556848
cat命令是linux下的一个文本输出命令,一般是用于观看某个文件的内容的;
cat主要有三大功能:
1.一次显示整个文件。
$ cat filename
2.从键盘建立一个文件。
$ cat > filename
只能建立新文件,不能编辑已有文件.
3.将几个文件合并为一个文件。
$cat file1 file2 > file
cat具体命令格式为 : cat [-AbeEnstTuv] [--help] [--version] fileName
说明:把档案串链接后传到基本输出(屏幕或加 > fileName 到另外一个档案)
参数:
-n 或 –number 由 1 开始对全部输出的行数编号
-b 或 –number-nonblank 和 -n 类似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
范例:
cat -n linuxfile1 > linuxfile2 把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里
cat -b linuxfile1 linuxfile2 >> linuxfile3 把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)以后将内容附加到linuxfile3 里。
范例:
把 linuxfile1 的档案内容加上行号后输入 linuxfile2 这个档案里
cat -n linuxfile1 > linuxfile2
把 linuxfile1 和 linuxfile2 的档案内容加上行号(空白行不加)以后将内容附加到 linuxfile3 里。
cat -b linuxfile1 linuxfile2 >> linuxfile3
cat /dev/null > /etc/test.txt 此为清空/etc/test.txt档案内容
暂无评论