+ -
当前位置:首页 → 问答吧 → shell 请问如何判断输入的字符串?

shell 请问如何判断输入的字符串?

时间:2010-12-21

来源:互联网

我想让shell判断$1中的输入如带有路径/etc/a则返回echo a,如果$1中输入的字符如带有路径/etc/b则返回echo b,这应该怎么做?
if [ $1 ? a ]
then echo a
else echo b
fi

作者: wwr   发布时间: 2010-12-21



QUOTE:
我想让shell判断$1中的输入如带有路径/etc/a则返回echo a,如果$1中输入的字符如带有路径/etc/b则返回echo  ...
wwr 发表于 2010-12-21 11:58

  1. #!/bin/bash
  2. if [ $# != 1 ]; then
  3.     echo "必须输入一个参数!"
  4.     exit
  5. else
  6.     if [[ $1 == "/etc/a" || $1 == "/etc/b" ]]; then
  7.         echo ${1##/*/}
  8.     fi
  9. fi
复制代码

作者: L_kernel   发布时间: 2010-12-21

是包含还是等于

作者: nagaregawa   发布时间: 2010-12-21

只要包含就可以了,因为我想做一个判断式,路径后面是一个变量
顺便问下L_kernel,echo ${1##/*/}这行是什么意思啊?

作者: wwr   发布时间: 2010-12-21



QUOTE:
只要包含就可以了,因为我想做一个判断式,路径后面是一个变量
顺便问下L_kernel,echo ${1##/*/}这行是什 ...
wwr 发表于 2010-12-21 14:40




    echo ${1#/*/}

  #/*/  给你个例子就明白

如果你
   /etc/a            输出 a
   /etc/aa/a       aa/a

..........

作者: taojie2000   发布时间: 2010-12-21