String 如何确定字符串是否是另一个字符串的子字符串
我试图确定包含许多文件路径的大字符串中是否存在子字符串(文件名)。这是我的代码,只是不工作(打印“不包含”)。我试着比较String 如何确定字符串是否是另一个字符串的子字符串,string,bash,string-comparison,String,Bash,String Comparison,我试图确定包含许多文件路径的大字符串中是否存在子字符串(文件名)。这是我的代码,只是不工作(打印“不包含”)。我试着比较=~,不同的引号用法。这似乎没什么用。您是否看到我的代码中有问题 #!/bin/bash text="/path/to/some/file1-2-3.json /another/path/to/file4-5-6.json" my_file="file1-2-3.json" if [[ *"$my_file"* =
=~
,不同的引号用法。这似乎没什么用。您是否看到我的代码中有问题
#!/bin/bash
text="/path/to/some/file1-2-3.json /another/path/to/file4-5-6.json"
my_file="file1-2-3.json"
if [[ *"$my_file"* == "$text" ]]; then
echo "Contain"
else
echo "Does not contain"
fi
如果将字符串反转,则该选项有效:
$ more script.sh
#!/bin/bash
text="/path/to/some/file1-2-3.json /another/path/to/file4-5-6.json"
my_file="file1-2-3.json"
if [[ "$text" == *"$my_file"* ]]; then
echo "Contain"
else
echo "Does not contain"
fi
$ ./script.sh
Contain
$
表单manbash
:
当==和!=使用运算符时,运算符右侧的字符串为
考虑模式,并根据模式匹配下描述的规则进行匹配
我刚刚发现,我只是在写我自己的问题。多么讨厌的虫子-四氢呋喃