LinuxSir.cn,穿越时空的Linuxsir!

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

谁能解释一下这段通配符是什么意思?

[复制链接]
发表于 2005-9-29 16:22:29 | 显示全部楼层 |阅读模式
grep '^+[0-9][0-9]*$'
3x!
发表于 2005-9-29 16:36:18 | 显示全部楼层
搜索开头为+并且紧跟两个数字,以任意字符结尾的字符串
回复 支持 反对

使用道具 举报

发表于 2005-9-29 17:22:49 | 显示全部楼层
搜索以+紧跟两个数字为开头,后跟只有0-9数字的行.如:
+1232321321
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-29 17:49:50 | 显示全部楼层
谢谢,这里面我想问一下:开始的^是什么意思,最后的*$又是什么意思?
回复 支持 反对

使用道具 举报

发表于 2005-9-29 23:08:26 | 显示全部楼层
Post by Shinux
谢谢,这里面我想问一下:开始的^是什么意思,最后的*$又是什么意思?

^表示行开头,$表示行尾,*表示有或没有任意。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-9-30 10:45:05 | 显示全部楼层
谢谢,假设要判断参数是否为整数,应该怎么弄呢?

echo $1 | grep '^[0-9]$',这样只能判断一位数啊
回复 支持 反对

使用道具 举报

发表于 2005-9-30 14:45:36 | 显示全部楼层
以(+00 - +99 )开头,任意字符结尾的 字符串
回复 支持 反对

使用道具 举报

发表于 2005-10-1 03:35:57 | 显示全部楼层
Post by Shinux
谢谢,假设要判断参数是否为整数,应该怎么弄呢?

echo $1 | grep '^[0-9]$',这样只能判断一位数啊

  1. grep "^[0-9]\+$"
复制代码
回复 支持 反对

使用道具 举报

发表于 2005-10-3 23:18:23 | 显示全部楼层
[yaop@]$ cat >file
+23
+34jl;jjjjjkl
+fjglksdf;
+354353454
+345fjdlk
+fjldsa
[yaop@]$ grep '^+[0-9][0-9]*$' file
+23
+354353454
[yaop@]$ bash --version
GNU bash, version 3.00.14(1)-release (i386-redhat-linux-gnu)
Copyright (C) 2004 Free Software Foundation, Inc.
烈火兄 ,webyuhang兄 ,在你们机器 是一下 .
回复 支持 反对

使用道具 举报

发表于 2005-10-5 20:43:43 | 显示全部楼层
grep '^+[0-9][0-9].*$'
好像这样才是"搜索开头为+并且紧跟两个数字,以任意字符结尾的字符串"
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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