基本正则表达及结合文件查找命令使用
2011-04-21 17:07
302 查看
grep 会对匹配一个或多个正则表达式(pattern)的文本进行搜索,并只输出匹配的文本而不影响原有内容
命令格式:
grep [option] [pattern] [file1,file2,…]
常用选项:
-c 只显示匹配行的数量
-i 不区分大小写
-n 对匹配到的行进行编辑
-v 只显示不匹配的行
以上下文的方式显示匹配的串:-An之前的n行 -Bn之后的n行 -Cn上下文都显示
正则表达式:
字符含义: ^word 搜索的字符串在行首
word$搜索的字符串在行尾
. 任意一个字符,一个任意字符
\反义字符将特殊符号的特殊意义去除
*重复零个或者多个的前一个重复的字符
\{n,m\}连续n到m个的前一个重复字符
[] 字符集合的一个重复特殊字符的符号
\< 锚定单词的开始
\> 锚定单词的结束
\b 单词锁定符,如: '\bgrep\b'只匹配grep
x\{m\} 重复字符x,m次,如:'0\{5\}'匹配包含5个0的行
扩展型正则表达式:
+ 重复“一个或一个以上”的字符
?“0个或一个”字符
| 是用或的方式找出字符串
() 找出“用户组”字符串
sort命令的功能是对文件中的各行进行排序
格式:sort [opt] file1,file2…
根据从输入行抽取的一个或多个关键字进行比较来完成排序,默认以整行为关键字按ASCII字符顺序进行排序
参数 -n按数值比较大小 -r逆序排列 -f忽略大小写 -u 连续的多行只显示一行
-t指定分隔符 -k指定字段
例如:sort -n -t: -k3 /etc/passwd
uniq
-d用以删除指定文件中重复的行
格式: uniq [opt] filename
常用选项:
-c 显示输出中,在每行行首加上本行在文件中出现的次数
-d 只显示重复行
-u 只显示文件中不重复的各行
cut提取某一字段的命令
-d指定结束符 -f指定字段
例如:
只显示网卡的ip地址
ifconfig |grep 'inet addr' |grep -v '127.0.0.1' |cut -d: -f2 |cut -d' ' -f1
diff和patch的作用比较文件及打补丁
用以逐行比较两个文本文件,并列出其不同之处
格式:diff [opt] from_file to_file
输出格式有三种:列举方式、命令模式和上下文模式
diff 命令显示以 < 开始的第一个文件中的所有受影响行,然后显示以 > 开始的第二个文件中的所有受影响行
在上下文输出格式时,- 开始的行表示第一个文件多出的,+ 开始的行表示第一个文件缺少的,!表示两个文件不同的行
常用选项:
-b 忽略行尾空格,且视字符串中的多个空格为1个
-c 采用上下文件输出格式
-C n 采用上下文格式输出,且只提供n行上下文
-u 采用统一输出格式
-r 当指定from_file和to_file为目录时,则递归比较目录中的文件
通过读入patch命令文件(可以从标准输入),对目标文件进行修改
通常patch使用diff的结果来完成打补丁的工作
格式:patch [options] [originalfile] [patchfile]
如果需要修改的是目录,一般都必须在patchfile中记录目录下的各个文件名;绝大多数情况下,patch都用以下这种简单的方式使用:
patch -p[num] <patchfile
-p 0 使用完整路径名
-p 1 除去前导斜杠
-p n 除去前导n个斜杠
命令格式:
grep [option] [pattern] [file1,file2,…]
常用选项:
-c 只显示匹配行的数量
-i 不区分大小写
-n 对匹配到的行进行编辑
-v 只显示不匹配的行
以上下文的方式显示匹配的串:-An之前的n行 -Bn之后的n行 -Cn上下文都显示
正则表达式:
字符含义: ^word 搜索的字符串在行首
word$搜索的字符串在行尾
. 任意一个字符,一个任意字符
\反义字符将特殊符号的特殊意义去除
*重复零个或者多个的前一个重复的字符
\{n,m\}连续n到m个的前一个重复字符
[] 字符集合的一个重复特殊字符的符号
\< 锚定单词的开始
\> 锚定单词的结束
\b 单词锁定符,如: '\bgrep\b'只匹配grep
x\{m\} 重复字符x,m次,如:'0\{5\}'匹配包含5个0的行
扩展型正则表达式:
+ 重复“一个或一个以上”的字符
?“0个或一个”字符
| 是用或的方式找出字符串
() 找出“用户组”字符串
sort命令的功能是对文件中的各行进行排序
格式:sort [opt] file1,file2…
根据从输入行抽取的一个或多个关键字进行比较来完成排序,默认以整行为关键字按ASCII字符顺序进行排序
参数 -n按数值比较大小 -r逆序排列 -f忽略大小写 -u 连续的多行只显示一行
-t指定分隔符 -k指定字段
例如:sort -n -t: -k3 /etc/passwd
uniq
-d用以删除指定文件中重复的行
格式: uniq [opt] filename
常用选项:
-c 显示输出中,在每行行首加上本行在文件中出现的次数
-d 只显示重复行
-u 只显示文件中不重复的各行
cut提取某一字段的命令
-d指定结束符 -f指定字段
例如:
只显示网卡的ip地址
ifconfig |grep 'inet addr' |grep -v '127.0.0.1' |cut -d: -f2 |cut -d' ' -f1
diff和patch的作用比较文件及打补丁
用以逐行比较两个文本文件,并列出其不同之处
格式:diff [opt] from_file to_file
输出格式有三种:列举方式、命令模式和上下文模式
diff 命令显示以 < 开始的第一个文件中的所有受影响行,然后显示以 > 开始的第二个文件中的所有受影响行
在上下文输出格式时,- 开始的行表示第一个文件多出的,+ 开始的行表示第一个文件缺少的,!表示两个文件不同的行
常用选项:
-b 忽略行尾空格,且视字符串中的多个空格为1个
-c 采用上下文件输出格式
-C n 采用上下文格式输出,且只提供n行上下文
-u 采用统一输出格式
-r 当指定from_file和to_file为目录时,则递归比较目录中的文件
通过读入patch命令文件(可以从标准输入),对目标文件进行修改
通常patch使用diff的结果来完成打补丁的工作
格式:patch [options] [originalfile] [patchfile]
如果需要修改的是目录,一般都必须在patchfile中记录目录下的各个文件名;绝大多数情况下,patch都用以下这种简单的方式使用:
patch -p[num] <patchfile
-p 0 使用完整路径名
-p 1 除去前导斜杠
-p n 除去前导n个斜杠
相关文章推荐
- liunx基本命令(文件系统的使用和查找命令)
- Linux命令 find和mv的结合使用:查找文件,移动到某个目录
- Linux命令 find和mv的结合使用:查找文件,移动到某个目录
- Linux系统文件查找命令find的基本使用及其高级用法
- 利用正则表达查找文件
- 基于Linux下详解正则表达式(基本正则和扩展正则命令使用实例)
- 如何使用find命令在Linux中查找文件
- C# 自动查找文件内容(正则使用、获取目录下所有文件、多线程、日志记录,文件操作)
- linux下find(文件查找)命令的使用
- Linux基本命令之文件查找、检索
- git 的使用——基本的仓库创建,文件提交,上传操作命令,远程仓库关联
- 【Linux学习笔记】Linux_01_基本命令、文件管理、正则
- 文件查找命令find的使用方法
- Linux内、外部命令的使用、文件权限、文件查找(find、locate、grep)
- 使用lsof命令查找java应用中未关闭的文件
- Dos中查找文件命令的使用find
- Linux文件查找find命令使用方法
- everything 全盘文件查找工具及正则表达式的使用
- linux中which命令使用详解(查找文件)
- 使用find命令查找Linux中的隐藏文件的方法