Bash expr命令

问题描述 投票:0回答:2

我正在尝试创建一个bash shell脚本,可以将一个名称值对添加到文本文件中,例如TEST=true。我试图这样做,如果用户试图添加一个已存在的名称,例如TEST=false,它不允许他们这样做。任何人都可以告诉我如何使用expr命令在=字符之前提取任何文本?任何帮助将不胜感激。

谢谢

bash expr parameter-expansion
2个回答
1
投票

expr是一个外部命令。你可以用bash来做

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


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

0
投票

那是你需要的吗?

if [[$ input =〜(。?*)=]]

然后

    echo $BASH_REMATCH is what I wanted    

    echo but just ${BASH_REMATCH[1]} 

http://aplawrence.com/Linux/bash-regex.html

© www.soinside.com 2019 - 2024. All rights reserved.