string - Bash:字符串包含连字符

标签 string bash contains

我正在尝试查看 string1 是否包含另一个 string2。我以这种方式这样做:

a=$(tempfile)
echo "eafg" > $a

if [[ $a == *e* ]]
then
   echo "contains"
fi

现在我尝试查看字符串是否包含连字符:

a=$(tempfile)    
echo "22:00:00-02:00" > $a

if [ $a == *-* ]
then
   echo "contains"
fi

这是行不通的。我也试过:

if [ $a == *--* ]
if [ $a == *---* ]
if [[ $a == *-* ]]
if [[ $a == *--* ]]
if [[ $a == *---* ]]

没有成功...

提前致谢

最佳答案

下面的一段代码带来了问题

a=$(tempfile)    
echo "22:00:00-02:00" > $a

在这里,您正在写入一个文件 $a,然后尝试进行string 比较。


尝试以下

a="22:00:00-02:00"

if [[ $a == *-* ]]
then
   echo "contains"
fi

关于string - Bash:字符串包含连字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20143184/

相关文章:

perl - 我如何在 bash 或 Perl 中比较一个数字和一个范围?

bash - 当 "set -x"时,Bash 中 stderr 中 + 号的数量是什么意思

javascript - 隐藏包含特定字符串的div

c# - 在 EF 6 中使用 .Contains()

c++ - 逐字排序字符串

c - 在结构中存储多维数组

python - 如何对表示元组的字符串列表进行排序?

linux - 如何对 BASH 输入或变量进行排毒?

xml - 查询 : how to try if a list contains a given string?

python - 我如何从字符串中删除标点符号,然后再将其添加回同一索引?