LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1345|回复: 7

grep '^[^48]' data.f 不明白??请教

[复制链接]
发表于 2003-1-16 23:07:11 | 显示全部楼层 |阅读模式
出来的结果是不匹配行首,搞不太懂,请问一下第一个和第二个^是什么意思?
发表于 2003-1-17 08:52:34 | 显示全部楼层
it means not
发表于 2003-1-17 18:32:41 | 显示全部楼层
what do you Want to Do?
 楼主| 发表于 2003-1-18 00:15:31 | 显示全部楼层
我知道第2^个是匹配行首,那第1个^是不是非的意思????
发表于 2003-1-20 02:04:56 | 显示全部楼层

关于行首行尾匹配查找的方法

关于匹配行首,匹配行尾和特殊字符匹配的方法:
//
1.匹配行首
使用^符号可以匹配行首,即找出以所要求字符开头的行.
如:
[javalee@Linux javalee]$ grep ^[pP] shellb.txt //查找p/P开头的行
print ():输出传递给他的文件的内容.
print() {
p | -p)print $@;;
pwd       |显示用户当前工作目录
PATH          |规定bash寻找可执行文件时搜索的路径
PS1           |命令行环境中显示第一级提示符号
PS2           |命令行环境中显示第二级提示符号
PWD           |用户当前工作目录
[javalee@Linux javalee]$

2.匹配行尾
使用符号$可以匹配行尾.
如:
[javalee@Linux javalee]$ grep [lL]$ shellb.txt  //查找l/L结尾的行
exit      |终止一个shell

[javalee@Linux javalee]$ grep [0-9]$ shellb.txt  //查找以数字0-9结尾的行
commands1
commands2
commands3
commands1
commands2
commands3
statements1
statements2
statements3
for var1
count=1
$1=file1 $2=file2 $3=file3
$1=file2 $2=file3
shift 2
shift 2
select menuitem in pick1 pick2 pick3
rm $1
mv $1.out $1
rm $1
mv $1.out $1
lpr $1
[javalee@Linux javalee]$

3.特殊字符匹配
使用方法与上述类似,不过要用斜杠儿(\):
如:
[javalee@Linux javalee]$ grep ^[\-] shellb.txt
------------------------------------------------------------------------------[javalee@Linux javalee]$ fg
//
方便吧
发表于 2003-1-20 02:07:59 | 显示全部楼层
谢谢javalee兄弟的讲解。非常的详细。
第二个^是非的意思,第一个是用来匹配开头第一个子符
发表于 2003-1-20 02:11:45 | 显示全部楼层
谢谢Pye兄的补充
 楼主| 发表于 2003-1-20 02:35:37 | 显示全部楼层
谢谢两位版主的回答,现在明白了,以后还要两位多多指点呀
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表