我正在尝试输入两个字符串并检查它们是否相等,如果不相等则告诉字符长度。我在输入两个字符串后没有发现错误,有人能告诉我我做错了什么吗?我尝试使用:
#!/bin/bash
while true; do
echo "Please Enter two name to compare"
read name_1 name_2
1=${#name_1}
2=${#name_2}
if [ "$name_1" -eq "$name_2" ]
then
echo "$name_1 and $name_2 are equal"
else
echo "$name_1 and $name_2 are not equal"
fi
echo "String 1 length is $(1)"
echo "String 2 length is $(2)"
done
最佳答案
积分:
bash
中的用户定义变量不能以数字开头,因此显然不能只是数字-eq
做算术比较;在比较字符串时使用=
(POSIX) 或==
关于比较字符串的 Linux 脚本错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36779073/