如何使用shell脚本比较IF-else条件中的字符串值



#/bin/sh

如果[$#-lt 2]然后回声;用法$0 servername envtype";出口1fi

servername=$1envtype=2美元srv=echo $servername | tr "a-z" "A-Z"srvtype=echo $envtype | tr "a-z" "A-Z"echo$srvecho$srvtype

如果["${srv}"<>"SCP"];然后如果["${srv}"<>"租金"];然后回声;无效的服务器名"出口1;fifi

我在运行外壳脚本时遇到此错误

  • [2-lt2]
  • 服务器名称=scp
  • envtype=prd
  • 回声scp
  • tr a-z a-z
  • srv=SCP
  • 回波prd
  • tr a-z a-z
  • srvtype=PRD
  • 回声SCPSCP
  • 回波PRDPRD
  • [SCP]
  • [SCP]/tmp/testupper.sh:19:[SCP:未找到

发现我的问题。

[" ${srv}" <> "RENTD" ] 

"$:" ${srv}"之间的srv变量前面有一个空格

最新更新