Bash-expr命令

Bash-expr命令,bash,expr,parameter-expansion,Bash,Expr,Parameter Expansion,我正在尝试创建一个bashshell脚本,该脚本可以向文本文件添加名称-值对,例如TEST=true。如果用户试图添加一个已经存在的名称,例如TEST=false,那么它不会让他们这样做。有人能告诉我如何使用expr命令提取=字符前面的任何文本吗?任何帮助都将不胜感激 谢谢这就是你需要的吗 如果[[$input=~(.?*)=]] 然后 fi expr是一个外部命令。您可以使用bash来完成它 s="TEST=true" echo ${s%%=*} OLDIFS="$IFS" IFS="="

我正在尝试创建一个bashshell脚本,该脚本可以向文本文件添加名称-值对,例如
TEST=true
。如果用户试图添加一个已经存在的名称,例如
TEST=false
,那么它不会让他们这样做。有人能告诉我如何使用
expr
命令提取
=
字符前面的任何文本吗?任何帮助都将不胜感激


谢谢这就是你需要的吗

如果[[$input=~(.?*)=]]

然后

fi


expr
是一个外部命令。您可以使用bash来完成它

s="TEST=true"
echo ${s%%=*}


OLDIFS="$IFS"
IFS="="
set -- $s
echo $1
IFS="$OLDIFS"
s="TEST=true"
echo ${s%%=*}


OLDIFS="$IFS"
IFS="="
set -- $s
echo $1
IFS="$OLDIFS"