【发布时间】:2023-03-29 06:36:02
【问题描述】:
我正在使用 BASH,但我不知道如何找到子字符串。它一直失败,我有一个字符串(这应该是一个数组吗?)
下面,LIST 是数据库名称的字符串列表,SOURCE 是回复,其中一个数据库。以下仍然不起作用:
echo "******************************************************************"
echo "* DB2 Offline Backup Script *"
echo "******************************************************************"
echo "What's the name of of the database you would like to backup?"
echo "It will be named one in this list:"
echo ""
LIST=`db2 list database directory | grep "Database alias" | awk '{print $4}'`
echo $LIST
echo ""
echo "******************************************************************"
echo -n ">>> "
read -e SOURCE
if expr match "$LIST" "$SOURCE"; then
echo "match"
exit -1
else
echo "no match"
fi
exit -1
我也试过了,但是不行:
if [ `expr match "$LIST" '$SOURCE'` ]; then
【问题讨论】:
-
如果不知道
LIST和SOURCE是什么样子,就很难回答任何类型的问题 -
在 Bash 中,几乎总是没有理由使用
expr这是一个外部实用程序。