string - bash 文字列 切り出し 正規表現 - Bashで文字列に部分文字列が含まれているかどうかを確認する方法

shell 文字列 置換 / string / bash / shell / substring / sh

私はBashで文字列を

string="My string"

別の文字列が含まれているかどうかをテストするにはどうしたらいいですか?

if [ $string ?? 'foo' ]; then
  echo "It's there!"
fi
if echo "$string" | grep 'foo'; then
  echo "It's there!"
fi

Andrzej Sydor



Answer #1

このStackOverflowの回答は、スペースとダッシュ文字をトラップする唯一の回答でした。

#nullcmd引数のチェック用
to_check=' -t'
space_n_dash_chars=' -'
[[ $to_check == *"$space_n_dash_chars"* ]] && echo found