#!/bin/bash
STR1="David20"
STR2="fbhfthtrh"
if [ "$STR1"="$STR2" ]; then
echo "Both the strings are equal"
else
echo "Strings are not equal"
fi
答案1
[
是一个普通命令(尽管是内置命令),结束语]
只是它的一个参数。"$STR1"="$STR2"
扩展变量并删除引号后也是如此。重点是"$STR1"="$STR2"
变成一参数,如果前面只有一个参数]
并且它是一个非空字符串,则结果为 true(退出状态0
)。
你要
[ "$STR1" = "$STR2" ]
现在有三前面的参数]
和中间的 ( =
) 告诉命令您要比较字符串。