Chinaunix首页 | 论坛 | 博客
  • 博客访问: 694804
  • 博文数量: 85
  • 博客积分: 1797
  • 博客等级: 上尉
  • 技术积分: 1238
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-02 08:53
个人简介

职位:技术总监 1、精通c++(linux平台、vc++Mfc、qt)、java、php、unity3d,略懂python 2、用c++开发过嵌入式产品,用c++开发过大型银行运维产品 3、用java开发大型银行运维产品,学校教务系统 4、用php开发进销存系统(在销售中),用php开发淘宝小程序 5、用unity3d开发衣柜设计软件,在运营中

文章分类

全部博文(85)

分类: Python/Ruby

2011-10-19 19:43:25

Shell字符串过滤


目的:由两个ip组成的字符串中取出两个ip来。


运行结果:

运行结果:

运行结果:

从上面的例子看到作用了吧

当搜索最长匹配时,使用 ##(因为 ## 比 长)。当搜索最短匹配时,使用 #。看,不难记吧!等一下,怎样记住应该使用 '#' 字符来从字符串开始部分除去?很简单!注意到了吗:在美国键盘上,shift-4 是 "$",它是 bash 变量扩展字符。在键盘上,紧靠 "$" 左边的是 "#"。这样,可以看到:"#" 位于 "$" 开始处,因此(根据我们的记忆法),"#" 从字符串的开始处除去字符。您可能要问:如何从字符串末尾除去字符。如果猜到我们使用美国键盘上紧靠 "$" 右边 的字符 ("%),那就猜对了。

 

 

补:

比较两个字符串是否相等的办法是: 
if [ "$test"x = "test"x ]; then
这里的关键有几点:
使用单个等号
注意到等号两边各有一个空格:这是unix shell的要求
注意到"$test"x最后的x,这是特意安排的,因为当$test为空的时候,上面的表达式就变成了x = testx,显然是不相等的。而如果没有这个x,表达式就会报错:[: =: unary operator expected

阅读(5622) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~