我正在尝试创建一个bash shell脚本,该脚本可以将名称值对添加到文本文件中,例如TEST=true。我正在尝试这样做,所以如果用户试图添加一个已经存在的名称,例如TEST=false,它不会让他们这样做。谁能告诉我如何使用expr命令来提取=字符之前的任何文本?任何帮助都将不胜感激。
谢谢
发布于 2010-08-24 19:25:31
expr是一个外部命令。您可以使用bash来完成此操作
s="TEST=true"
echo ${s%%=*}
OLDIFS="$IFS"
IFS="="
set -- $s
echo $1
IFS="$OLDIFS"发布于 2010-08-24 19:16:28
这就是你需要的吗?
如果[ $input =~ (.?*)= ]
然后
echo $BASH_REMATCH is what I wanted
echo but just ${BASH_REMATCH[1]} fi
http://aplawrence.com/Linux/bash-regex.html
https://stackoverflow.com/questions/3555757
复制相似问题