This question already has answers here:
How to compare strings in Bash
(10个答案)
2年前关闭。
我正在尝试让
我已经尝试过各种形式的
我看过各种站点和教程,并复制了这些站点和教程,但这不起作用-我在做什么错?
最终,我想说一说
我只是算出空格位...:/我怎么说?
我试过了
但这没用。
对于字符串不等于比较,请使用:
对于
(并确保在符号之间添加空格):
坏:
好:
(10个答案)
2年前关闭。
我正在尝试让
if
语句在Bash中工作(使用Ubuntu):#!/bin/bash
s1="hi"
s2="hi"
if ["$s1" == "$s2"]
then
echo match
fi
我已经尝试过各种形式的
if
语句,使用[["$s1" == "$s2"]]
,使用带引号和不使用引号,使用=
,==
和-eq
,但是仍然出现以下错误:我看过各种站点和教程,并复制了这些站点和教程,但这不起作用-我在做什么错?
最终,我想说一说
$s1
是否包含$s2
,那我该怎么办?我只是算出空格位...:/我怎么说?
我试过了
if [[ "$s1" == "*$s2*" ]]
但这没用。
最佳答案
对于字符串相等性比较,请使用:
if [[ "$s1" == "$s2" ]]
对于字符串不等于比较,请使用:
if [[ "$s1" != "$s2" ]]
对于
a
包含b
,请使用:if [[ $s1 == *"$s2"* ]]
(并确保在符号之间添加空格):
坏:
if [["$s1" == "$s2"]]
好:
if [[ "$s1" == "$s2" ]]