Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1906245
  • 博文数量: 217
  • 博客积分: 4362
  • 博客等级: 上校
  • 技术积分: 4180
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-20 09:31
文章分类

全部博文(217)

文章存档

2017年(1)

2015年(2)

2014年(2)

2013年(6)

2012年(42)

2011年(119)

2010年(28)

2009年(17)

分类: Python/Ruby

2011-12-13 20:19:41

这个脚本比较简单,就是判断一个输入是不是由数字和字母组成的。

  1. #!/bin/bash
  2. validAlphaNum()
  3. {
  4.         compressed="$(echo $1 | sed -e 's/[^[:alnum:]]//g')"
  5.         echo "com:$compressed"
  6.         echo "asdf:$1"
  7.         if [ "$compressed" != "$1" ] ; then
  8.                 return 1
  9.         else
  10.                 return 0
  11.         fi
  12. }
  13. echo -n "Enter input: "
  14. read input
  15. if ! validAlphaNum "$input" ; then
  16.         echo "Your input must consist of only letters and numbers" >&2
  17.         exit 1
  18. else
  19.         echo "Input is valid"
  20. fi
  21. exit 0

我觉得,这个脚本可以引出下面3个问题:
1.$var和${var}的区别:使用${var}是为了防止在某些上下文中引用变量引起的错误。
2.echo $var和echo "$var"的区别,看一个例子就明白了:

var="A B  C    D"
echo $var       #A B C D
echo "$var"     #A B  C    D

3.$(...)的用法:使用$(...)机制进行的变量赋值(除去使用``来赋值的另外一种新方法),事实上这两种方法都是相同的。


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